Centos搭建Asterisk+Freepbx电话系统

VoIP 是利用某个网络协议,比如SIP协议 和 RTP协议 等,从而实现通过因特网来传输声音

前提

所有命令必须在root用户下操作!

必须禁止 selinux。 selinux 会导致一些奇怪的行为!

禁止selinux

在/etc/sysconfig/selinux , 更改以下行:

sed -i 's/\(^SELINUX=\).*/\SELINUX=disabled/' /etc/sysconfig/selinux

sed -i 's/\(^SELINUX=\).*/\SELINUX=disabled/' /etc/selinux/config

重启服务器, 检查selinux是否运行 ‘sestatus’。应该是:

SELinux status: disabled

更新你的系统

yum -y update

yum -y groupinstall core base "Development Tools"

增加Asterisk用户

adduser asterisk -m -c "Asterisk User"

防火墙基本配置

必须打开端口80才能访问管理接口

firewall-cmd --zone=public --add-port=80/tcp --permanent

firewall-cmd --reload

安装其他必需的依赖项

yum -y install lynx tftp-server unixODBC mysql-connector-odbc mariadb-server mariadb   httpd ncurses-devel sendmail sendmail-cf sox newt-devel libxml2-devel libtiff-devel  audiofile-devel gtk2-devel subversion kernel-devel git crontabs cronie   cronie-anacron wget vim uuid-devel sqlite-devel net-tools gnutls-devel python-devel texinfo   libuuid-devel

安装php 5.6 rpm仓库

rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

安装 php5.6w

yum remove php*

yum install php56w php56w-pdo php56w-mysql php56w-mbstring php56w-pear php56w-process php56w-xml php56w-opcache php56w-ldap php56w-intl php56w-soap

安装 nodejs

curl -sL https://rpm.nodesource.com/setup_8.x | bash -

yum install -y nodejs

启用和启动 MariaDB

必须运行MariaDB才能使freepbx正常运行。它必须自动启动,并连续运行。

systemctl enable mariadb.service

systemctl start mariadb

现在MariaDB数据库正在运行,我们希望运行一个简单的安全脚本,该脚本将删除一些危险的默认值,并稍微锁定对数据库系统的访问

mysql_secure_installation

提示将询问你当前的root密码。安装MySQL以来,不要只按enter键,所以你很可能会将其留空。然后提示将询问你是否要设置root密码。不要设置root密码。作为安装脚本的一部分,我们会自动保护数据库。除此之外,你还可以为其余部分选择yes。这将删除一些示例用户和数据库,禁用远程root登录,并加载这些新规则,以便MySQL我们需要的配置。

启用和启动Apache

FreePBX 使用 Apache web 服务器, 所以我们必须保证自动启动和启动中

systemctl enable httpd.service

systemctl start httpd.service

安装Pear要求

pear install Console_Getopt

安装和配置 Asterisk
下载Asterisk源码文件

cd /usr/src

wget http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-current.tar.gz

wget http://downloads.asterisk.org/pub/telephony/libpri/libpri-current.tar.gz

wget -O jansson.tar.gz https://github.com/akheron/jansson/archive/v2.10.tar.gz

Asterisk 15

wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-15-current.tar.gz

编译和安装 DAHDI

如果没有任何物理PSTN硬件连接到此服务器,则不需要安装DAHDI(例如,T1或E1卡或USB设备)。大多数较小的设备将没有DAHDI硬件,可以跳过这一步。

cd /usr/src

tar xvfz dahdi-linux-complete-current.tar.gz

tar xvfz libpri-current.tar.gz

rm -f dahdi-linux-complete-current.tar.gz libpri-current.tar.gz

cd dahdi-linux-complete-*

make all

make install

make config

cd /usr/src/libpri-*

make

make install

编译和安装 jansson

cd /usr/src

tar vxfz jansson.tar.gz

rm -f jansson.tar.gz

cd jansson-*

autoreconf -i

./configure --libdir=/usr/lib64

make

make install

编译和安装 Asterisk

cd /usr/src

tar xvfz asterisk-14-current.tar.gz

rm -f asterisk-*-current.tar.gz

cd asterisk-*

contrib/scripts/install_prereq install

./configure --libdir=/usr/lib64 --with-pjproject-bundled

contrib/scripts/get_mp3_source.sh

make menuselect

此时将提示你选择要构建的模块。大多数功能都已启用,但如果你想支持MP3(例如,音乐保持),则需要在第一页手动打开“format_mp3”。

选择“保存并退出”后,可以继续

make

make install

make config

ldconfig

chkconfig asterisk off

设置Asterisk用户组权限

chown asterisk. /var/run/asterisk

chown -R asterisk. /etc/asterisk

chown -R asterisk. /var/{lib,log,spool}/asterisk

chown -R asterisk. /usr/lib64/asterisk

chown -R asterisk. /var/www/

安装和配置 FreePBX

对Apache的一些小修改。

sed -i 's/\(^upload_max_filesize = \).*/\120M/' /etc/php.ini

sed -i 's/^\(User\|Group\).*/\1 asterisk/' /etc/httpd/conf/httpd.conf

sed -i 's/AllowOverride None/AllowOverride All/' /etc/httpd/conf/httpd.conf

systemctl restart httpd.service

下载和安装 FreePBX.

cd /usr/src

wget http://mirror.freepbx.org/modules/packages/freepbx/freepbx-14.0-latest.tgz

tar xfz freepbx-14.0-latest.tgz

rm -f freepbx-14.0-latest.tgz

cd freepbx

./start_asterisk start

./install -n

你现在可以开始使用FreePBX了。打开web浏览器,连接到新FreePBX服务器的IP地址或主机名。你会看到管理员设置页面,在这里你可以设置你的’admin’帐户密码,并配置一个电子邮件地址来接收更新通知。

遇到的问题

1.在云服务器搭建是要设置防火墙的安全组,且安全组不生效的话需要重启服务器

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值