centos5.5下实现asterisk1.8_*+RSTP安装及配置过程

来源:互联网 发布:mac最大化窗口的快捷键 编辑:程序博客网 时间:2024/05/16 06:49

asterisk1.8安装包地址:https://www.asterisk.org/downloads/asterisk/all-asterisk-versions

srtp安装包地址:http://sourceforge.net/projects/srtp/

安装过程:

首先是安装srtp,安装前确保有这些包:
yum -y install gcc gcc-c++ pkgconfig zlib-devel openssl-devel ncurses-devel
yum -y install autoconf automake libtool
开始安装(请使用该包,其他的包多数对centos没用,改了也无济于事)
         1.tar zxvf srtp-1.4.4.tgz
2.cd srtp
3../configure --prefix=/usr
4.vim Makefile  (这里是该包的make的一个BUG,需要手动修改)
  改:CFLAGS  = -fPIC -Wall -O4 -fexpensive-optimizations -funroll-loops
5.make
6.make install
         7.mv /usr/lib/libsrtp.a /usr/lib64/
然后安装asterisk
1.tar zxvf asterisk-1.8.7.1.tar.gz
2.cd asterisk-1.8.7.1
3../configure --with-ssl
4.make menuconfig (检查res_srtp是否被选择上了,确保该模块加载上)
5.make 
6.make install
授权证书的生成:
首先我们生成一个认证证书,好让我们导入我们要使用的软电话和注册的电脑中。
1.genrsa -des3 -out ca.key 5060
 这个过程中会让我们输入一个长度大于4位小于254位的密码。记住这个密码。
 生成的文件是ca.key
2.openssl req -new -x509 -days 365 -key ca.key -out ca.crt 
 生成证书。有效期一年,这个文件是ca.crt这个文件我们要安装在客户电脑上
 生成过程中会让我们输入国家,省,市,公司等信息,请记住你输入的,如果不想记干脆就敲回车
3.在客户机器上安装这个ca.crt文件(windows上双击安装就可以)

其次是生成服务器端的文件。
1.首先建立一个目录:mkdir /etc/asterisk/key
2.openssl genrsa -out key.pem 1024
3.openssl req -new -key key.pem -out req-sip_remiphilippe_fr.csr
  公钥信息
4.openssl x509 -req -days 365 -in req-sip_remiphilippe_fr.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out cert-sip_remiphilippe_fr.crt
  加入所有的客户端认证信息
5.组合:
  cat key.pem > asterisk.pem
  cat cert-sip_remiphilippe_fr.crt >> asterisk.pem
 
到这里授权文件生成完了。然后将asterisk.pem,ca.crt复制进入/etc/asterisk/key目录中
 
客户端的安装:
 将证书ca.crt安装在客户机上,双击后即可。
 别急,软电话也要证书,将key.pem文件装入软电话。(这个取决于软电话,多数软电话没有该功能)
asterisk配置过程:
         sip.conf文件
[general]
context=incoming
allowguest=no
alwaysauthreject=yes  ;开启这个会在授权错误的情况下提示错误
allow=ulaw
allow=alaw
allow=gsm




tlsenable=yes    ;开启tls验证
tlsbindaddr=0.0.0.0
tlscertfile=/etc/asterisk/keys/asterisk.pem ;srtp授权文件该文件内存放的是密码相关的,授权文件的生成请参考:http://www.remiphilippe.fr/2010/05/30/sips-on-asterisk-sip-security-with-tls/
tlscafile=/etc/asterisk/keys/ca.crt ;srtp授权配置  
tlscipher=ALL
tlsclientmethod=tlsv1


[007]
type=peer
defaultuser=007
secret=007
dtmfmode=rfc2833
callerid="User one"
host=dynamic        ; The device must always register
canreinvite=no
nat=yes
encryption=yes  ;开启加密机制
transport=tls    ;这里会和软电话上的传输协议一致,多数软电话这个协议不生效,在注册时会报错,请选择有srtp的软电话,并且多数网管注册的物理电话没有此功能。
deny=0.0.0.0/0.0.0.0
permit=192.168.18.0/255.255.255.0
context=myphones
[008]
type=peer
defaultuser=008
secret=008
dtmfmode=rfc2833
callerid="User two"
host=dynamic        ; The device must always register
canreinvite=no
nat=yes
encryption=yes
transport=tls
deny=0.0.0.0/0.0.0.0
permit=192.168.18.0/255.255.255.0
context=myphones
配置完成后asterisk -rvvv
>module reload
>sip reload
>core reload
原创粉丝点击