初始消息系统设置
所有命令必须在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'。应该是:
更新你的系统
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仓库
安装 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正常运行。它必须自动启动,并连续运行。
现在MariaDB数据库正在运行,我们希望运行一个简单的安全脚本,该脚本将删除一些危险的默认值,并稍微锁定对数据库系统的访问
mysql_secure_installation |
提示将询问你当前的root密码。安装MySQL以来,不要只按enter键,所以你很可能会将其留空。然后提示将询问你是否要设置root密码。不要设置root密码。作为安装脚本的一部分,我们会自动保护数据库。除此之外,你还可以为其余部分选择yes。这将删除一些示例用户和数据库,禁用远程root登录,并加载这些新规则,以便MySQL我们需要的配置。
启用和启动Apache
FreePBX 使用 Apache web 服务器, 所以我们必须保证自动启动和启动中
安装Pear要求
pear install Console_Getopt |
下载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
http: //downloads .asterisk.org /pub/telephony/asterisk/asterisk-15-current . tar .gz |
Asterisk 16
http: //downloads .asterisk.org /pub/telephony/asterisk/asterisk-16-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”。
如果使用 Asterisk 16,必须启用 app_macro.
选择“保存并退出”后,可以继续
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/ |
对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.
就这样
你现在可以开始使用FreePBX了。打开web浏览器,连接到新FreePBX服务器的IP地址或主机名。你会看到管理员设置页面,在这里你可以设置你的'admin'帐户密码,并配置一个电子邮件地址来接收更新通知。