Asterisk是一个开源的SIP电话交换机系统。
本指南——怎样在CentOS 7操作系统上安装Asterisk——涵盖了全新安装的所需的步骤,将帮助您为您的家庭或办公室安装一个专用Asterisk服务器。
请注意本指南要求具备root用户权限。
默认您已经有一个CentOS 7服务器(其他版本也可以) 。
默认您使用root权限登入。
编辑/etc/selinux/config为了确保禁用SELinux:
1 |
SELINUX=disabled |
更新你的软件包:
yum update
重新启动你的机器:
reboot
在安装Asterisk之前先安装一些依赖包。当然,很多依赖包可能已经被安装了,没关系,也可以检查下,安装运行:
yum install -y wget epel-release dmidecode gcc-c++ ncurses-devel libxml2-devel make wget openssl-devel newt-devel kernel-devel sqlite-devel libuuid-devel gtk2-devel jansson-devel binutils-devel
PJPROJECT是Asterisk的SIP通道的驱动之一。
创建一个目录:
mkdir ~/build
切换到该目录:
cd ~/build
使用wget获取PJSIP 源代码:
wget http://www.pjsip.org/release/2.3/pjproject-2.3.tar.bz2
提取:
tar -jxvf pjproject-2.3.tar.bz2
切换到新创建的目录:
cd pjproject-2.3
准备软件编译:
./configure CFLAGS="-DNDEBUG -DPJ_HAS_IPV6=1" --prefix=/usr --libdir=/usr/lib64 --enable-shared --disable-video --disable-sound --disable-opencore-amr
编译过程你不应该看到任何错误消息。
确保所有依赖项都到位:
make dep make
安装包:
make install ldconfig
确保库已正确安装:
ldconfig -p | grep pj
你应该输出看起来像:
libpjsua2.so.2 (libc6,x86-64) => /lib64/libpjsua2.so.2 libpjsua2.so (libc6,x86-64) => /lib64/libpjsua2.so libpjsua.so.2 (libc6,x86-64) => /lib64/libpjsua.so.2 libpjsua.so (libc6,x86-64) => /lib64/libpjsua.so libpjsip.so.2 (libc6,x86-64) => /lib64/libpjsip.so.2 libpjsip.so (libc6,x86-64) => /lib64/libpjsip.so libpjsip-ua.so.2 (libc6,x86-64) => /lib64/libpjsip-ua.so.2 libpjsip-ua.so (libc6,x86-64) => /lib64/libpjsip-ua.so libpjsip-simple.so.2 (libc6,x86-64) => /lib64/libpjsip-simple.so.2 libpjsip-simple.so (libc6,x86-64) => /lib64/libpjsip-simple.so libpjnath.so.2 (libc6,x86-64) => /lib64/libpjnath.so.2 libpjnath.so (libc6,x86-64) => /lib64/libpjnath.so libpjmedia.so.2 (libc6,x86-64) => /lib64/libpjmedia.so.2 libpjmedia.so (libc6,x86-64) => /lib64/libpjmedia.so libpjmedia-videodev.so.2 (libc6,x86-64) => /lib64/libpjmedia-videodev.so.2 libpjmedia-videodev.so (libc6,x86-64) => /lib64/libpjmedia-videodev.so libpjmedia-codec.so.2 (libc6,x86-64) => /lib64/libpjmedia-codec.so.2 libpjmedia-codec.so (libc6,x86-64) => /lib64/libpjmedia-codec.so libpjmedia-audiodev.so.2 (libc6,x86-64) => /lib64/libpjmedia-audiodev.so.2 libpjmedia-audiodev.so (libc6,x86-64) => /lib64/libpjmedia-audiodev.so libpjlib-util.so.2 (libc6,x86-64) => /lib64/libpjlib-util.so.2 libpjlib-util.so (libc6,x86-64) => /lib64/libpjlib-util.so libpj.so.2 (libc6,x86-64) => /lib64/libpj.so.2 libpj.so (libc6,x86-64) => /lib64/libpj.so
DAHDI或Digium /Asterisk硬件设备接口是内核模块控制电话接口卡。 通常使用这种类型的语音卡是便于将Asterisk接入现有的电信交换机。
切换回你的目录:
cd ~/build
下载DAHDI:
wget http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-current.tar.gz
解压文件:
tar -zxvf dahdi-linux-complete-current.tar.gz
切换到新目录(不同的版本可能目录不一样):
cd dahdi-linux-complete-2.10.2+2.10.2/
请注意你的版本可能会有所不同。
构建DAHDI:
make
安装DAHDI:
make install make config
我们现在准备安装Asterisk 13日,您也可以安装最新的版本。
切换到目录:
cd ~/build
下载最新版本的Asterisk13:
wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-13-current.tar.gz
解压文件:
tar -zxvf asterisk-13-current.tar.gz
切换到新Asterisk目录:
cd asterisk-13.5.0
使用的音乐MP3文件,需要安装一些依赖关系。
安装Subversion:
yum install svn
运行:
contrib/scripts/get_mp3_source.sh
运行configure脚本准备Asterisk源代码编译:
./configure --libdir=/usr/lib64
启动过程:
make menuselect
过了一段时间后,你应该看到一个菜单,允许您配置您想要的特性。
如果你想使用MP3格式的音乐,你应该选择Add-Ons,然后使用右箭头移动到右边的列表中。 导航到format_mp3并按enter键来选择它。
选择添加音乐包和声搁置包在左边菜单,并启用的wav格式所需的语言。 (即:使用EN包的英语。)
F12保存并退出。
编译Asterisk:
make
在系统上安装Asterisk:
make install
安装示例配置文件:
make samples
配置Asterisk开始自动启动:
make config
恭喜你! 你现在有一个Asterisk电话服务器了。 让我们启动Asterisk服务,并确保它运行。
Asterisk开始:
service asterisk start
连接到Asterisk:
asterisk -rvv
您将收到一个提示与当前版本号。
看到的列表可能的命令:
core show help
断开连接类型:
exit
断开之后,Asterisk继续在后台运行。