CentOS 6.5 64位系統OpenSips 1.11部屬配置 -开发者知识库

CentOS 6.5 64位系統OpenSips 1.11部屬配置 -开发者知识库,第1张

上一篇介紹了OpenSips在CentOS 64位系統下的編譯過程,本篇將主要介紹部屬與配置,因網絡限制無法上傳截圖,涉及重要過程請注冊紅色字體部分


1、安裝opensips,在安裝前先選取數據庫模塊,否則在后述數據庫配置/usr/local/lib64/opensips/opensipsctl目錄下找不到對應數據庫文件

make menuconfig -> Configure Compile Options -> Configure Excluded Modules -> db_mysql

make install

2、安裝mysql,如系統已帶有mysql可以略過

yum install mysql*

CentOS源mysql版本為5.1.73,其它版本請自行安裝

3、配置數據庫信息 (/usr/local為opensips安裝路徑,如果自己改過請使用自己配置的路徑)

修改/user/local/etc/opensips/opensipsctlr文件 

#數據庫 MYSQL ORACLE PGSQL DB_BERKELEY DBTEXT均可

DBENGINE=MYSQL

#數據庫所在服務器主機名/IP均可

DBHOST=localhost

#數據庫名稱,默認使用opensips,可配置其它名稱

DBNAME=opensips

#數據庫訪問用戶,主要用於數據的讀寫,請在mysql添加用戶

DBWUSER=opensips

#數據庫訪問密碼,密碼必須為DBWUSER對應用戶的密碼

DBWPW=“123456”

#數據庫管理用戶,用於數據庫、表創建與數據讀寫等,默認使用root,如有需要可以自行配置mysql用戶權限

DBROOTUSER=“root”

4、創建數據庫

/usr/local/sbin/opensipsdbctl create

如出現以下類似錯誤,請回到步驟1 make menuconfig配置數據庫模塊

ERROR: could not load the script in /usr/local//lib64/opensips/opensipsctl/opensipsdbctl.mysql for database engine MYSQL
ERROR: database engine not loaded - tried 'MYSQL'

如果沒問題,會提示輸入DBROOTUSER的密碼,如下表示成功創建:

[root@localhost sbin]# ./opensipsdbctl create
MySQL password for root:
INFO: test server charset
INFO: creating database opensips ...
INFO: Core OpenSIPS tables succesfully created.
Install presence related tables? (y/n): y
INFO: creating presence tables into opensips ...
INFO: Presence tables succesfully created.
Install tables for imc cpl siptrace domainpolicy carrierroute userblacklist b2b registrant call_center? (y/n): y
INFO: creating extra tables into opensips ...
INFO: Extra tables succesfully created.

5、重定向opensips.log

opensips使用syslog服務,所以缺省情況下日志會進入/var/log/message這個文件,如果希望使用獨立的log文件,可以這樣設置:
touch /var/log/opensips.log
vi /etc/rsyslog.conf --> 增加一行:local0.* /var/log/opensips.log

重啟rsyslog服務
service rsyslog restart

6、安裝 rtpproxy 
下載 
[root@EA-SERVER ~]# git clone git://sippy.git.sourceforge.net/gitroot/sippy/rtpproxy
安裝 
[root@EA-SERVER ~]# cd rtpproxy
[root@EA-SERVER ~]# ./configure&&make&&make install
運行 
[root@EA-SERVER ~]# rtpproxy -l xxx.xxx.xxx.xxx -s udp:xxx.xxx.xxx.xxx:7890 -F
此處都填寫為當前服務器ip地址

7、配置其它業務

/usr/local/sbin/osipsconfig -> Configure Residential Script 修改配置

/usr/local/sbin/osipsconfig -> Generate Residential Script  生成配置文件在/usr/local/etc/opensips/opensips_residential_XXXX-XX-XX_XX:XX:XX.cfg

注意:如果啟動失敗請檢測如下部分,db_does_uri_exist可能報錯,需要刪除,也可以自己查看/var.log/opensips.log文件,找到出錯部分

# do lookup with method filtering
if (!lookup("location","m")) {
if (!db_does_uri_exist()) {
send_reply("420","Bad Extension");
exit;
}


t_newtran();
t_reply("404", "Not Found");
exit;
}

更改后啟動成功:

# do lookup with method filtering
if (!lookup("location","m")) {
t_newtran();
t_reply("404", "Not Found");
exit;
}

8、添加賬號 opensipsctl add user passwd

/usr/local/sbin/opensipsctl add 1000 1000

9、下載sip客戶端測試,注冊成功

注意sip uri domain,如果域名解析指向ip與服務器不一致,可能導致注冊超時,此時可以使用ip指向

如:sip:1000@192.168.1.2

最佳答案:

本文经用户投稿或网站收集转载,如有侵权请联系本站。

发表评论

0条回复