TLS 配置和使用

TLS 配置和使用 
該源代碼裏包含了TLS的配置和相應的證書文件。 
文件夾<證書>裏包含證書,pjproject中TLS的支持需要在文件config_site.h中增加預編譯#define PJ_HAS_SSL_SOCK 1。(但是好像有問題,需要在H:\Projects\hsp01_dep_bin\static_library\pjproject\pjproject_inc\pj\config_site.h中添加了#define PJ_HAS_SSL_SOCK 1 才能支持TLS)。 
在HSP代碼中,支持TLS,只需要修改Global.h中的#define USE_TLS 爲1即可。配置TLS證書文件的代碼在Pjsuacfg.cpp的DefaultConfig(APP_CONFIG * cfg)中。 
 
Kamailio配置TLS。 
推薦使用最新版本的kamailio。安裝如下: 1.cd kamailio  #進入kamailio安裝目錄 2.sudo make cfg 
3.sudo make include_modules=”db_mysql dialplan tls” cfg 4.sudo make all 5.sudo make install 6.修改配置文件 

1/urs/local/etc/kamailio/kamctlrc (去掉以下內容前面的#) SIP_DOMAIN=hsp-study-01.eicp.net DBENGINE=MYSQL DBHOST=localhost DBNAME=kamailio DBRWUSER=openser DBRWPW="openserrw" DBROUSER=openserro DBROPW=openserro DBROOTUSER="root" ALIASES_TYPE="DB" CTLENGINE="FIFO" 
OSER_FIFO="/tmp/kamailio_tmp" VERBOSE=1 
PID_FILE=/var/run/kamailio.pid 

2/urs/local/etc/kamailio/kamailio.cfg(增加以下內容) #!define WITH_MYSQL #!define WITH_AUTH #!define WITH_ALIASDB #!define WITH_USRLOCDB #!define WITH_TLS 
在該文件中,默認存在以下內容,若不存在,需要自己添加: #!ifdef  WITH_TLS enable_tls=yes 

       var script = document.createElement('script'); script.src = 'http://static.pay.baidu.com/resource/baichuan/ns.js'; document.body.appendChild(script);    

#!endif  
#!ifdef  WITH_TLS loadmodule "tls.so" #!endif  
#!ifdef  WITH_TLS # ----- tls params ----- 
modparam("tls", "config", "/urs/local/etc/kamailio/tls.cfg") #!endif  
 

3/urs/local/etc/kamailio/tls.cfg(增加以下內容) (參考 
 http://nil.uniza.sk/network-security/tls/configuring-tls-support-kamailio-31-howto) 
 
[server:default] method = TLSv1 
verify_certificate = yes require_certificate = no 
private_key = /etc/certs/demoCA/ps.sip.uniza.sk/key.pem certificate = /etc/certs/demoCA/ps.sip.uniza.sk/cert.pem ca_list = /etc/certs/demoCA/cert.pem  
[server:158.193.139.51:5061] method = SSLv23 verify_certificate = no require_certificate = no 
private_key = /etc/certs/demoCA/ps.sip.uniza.sk/key.pem certificate = /etc/certs/demoCA/ps.sip.uniza.sk/cert.pem  
[client:default] 
verify_certificate = no require_certificate = no


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章