您的位置:首页 > 运维架构 > Linux

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

2013-02-05 16:18 585 查看
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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: