程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> 關於MYSQL數據庫 >> 基於ubuntu中使用mysql實現opensips用戶認證的解決方法

基於ubuntu中使用mysql實現opensips用戶認證的解決方法

編輯:關於MYSQL數據庫

1 MySQL支持

1.1 MySQL模塊支持

      默認安裝時,不包含MySQL模塊。

      opensipsctlrc文件中包含了數據庫配置的信息,要想讓opensips支持mysql數據庫,在編譯安裝的時候

就要支持mysql模塊。方法如下:

     (1)修改opensips中的Makefile.conf,在exclude_modules中去掉db_mysql,在include_modules中

添加db_mysql,然後重新編譯安裝。要添加支持的模塊都可以這樣操作。

     (2)編譯時指定,make include_modules=”db_mysql” modules prefix=/  。

      在編譯安裝之前,需要安裝mysql的開發包,要不編譯通不過。方法如下:

      $sudo apt-get install libmysqlclient-dev 。

2.2 安裝MySQL

      使用sudo opensipsdbctl create創建數據庫在之前,要確認已經安裝了mysql。安裝方法如下:

       $sudo apt-get install mysql-server mysql-client

      安裝過程中提示輸入mysql的root用戶密碼。使用如下命令測試mysql是否安裝成功

   $sudo mysql -p           輸入剛才設置的root密碼

       MySQL URL格式如下:

       mysql://username:password@domain/dbname

2.3 創建opensips數據庫

       使用sudo opensipsdbctl create命令來創建數據庫,這個過程中要求輸入MySQL數據庫root用戶的密碼,

就是上一步輸入的密碼。然後還有一些附加的表讓你選擇是否創建,選擇之後opensips數據庫創建成功。

       /sbin/opensipsdbctl是一個shell腳本,可以打開讀一下它的代碼就知道創建數據庫是怎麼一個過程了。首先,

它會把/etc/opensips/opensipsctlrc這個配置文件包含進來,然後根據這個配置文件來創建數據庫,還涉及到

/lib/opensips/opensipsctl中的opensipsdbctl.base文件和 opensipsdbctl.mysql文件。

       可以進入opensips數據庫查看一下有哪些表,用戶認證要用的是subscriber表。

2 用戶認證配置

      上一節中已經說明了怎麼讓opensips支持MySQL數據庫,用戶認證是在上一節的基礎上完成的。

  這部分的主要工作是對opensips配置文件的修改,包括opensips.cfg和opensipsctlrc文件。配置文件opensips.cfg中

要修改全局變量、加載db_mysql.so、auth.so和auth_db.so動態庫,並配置相應的參數,以及修改路由策略,同時配置文件

opensipsctlrc中也要修改一些參數。

  配置文件opensips.cfg如下:

  http://www.jb51.net/article/35752.htm

  配置的過程中在網上找了很多資料,通常是配置文件檢查能通過,但總是不能運行opensips,對這些資料深表懷疑,不知道

他們有沒有真正實踐過!

  最後還是決定看官方的說明,如opensips mysql installation的英文PDF、opensips源碼包中的INSTALL文件等。

INSTALL文件中只說明了要向opensips.cfg文件中添加那些配置代碼,而沒有詳細說明要把這些語句加在什麼位置,而且

其中好像還有錯誤,不能使用break,而是exit。opensips mysql installation的英文PDF中說明了具體的位置,但是還要

根據自己的實際情況來配置。

  配置完成以後要檢查配置文件語法是否正確,命令如下:

  $sudo  opensips –c

  檢查通過以後啟動opensips,命令如下:

  $sudo opensipsctl start

  如果啟動時出現錯誤,查看系統日志了解具體原因,然後針原因解決問題。

  $vim /var/log/syslog

3 測試

  添加SIP用戶:

  語法:opensipsctl add <username> <password>

  opensipsctl add [email protected] 123456

  opensipsctl add [email protected] 123456

  然後下載SIP客戶端進行測試!

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved