“FreePBX-13 Centos-7 源代码安装”的版本间的差异
第25行: | 第25行: | ||
yum -y groupinstall core base "Development Tools" | yum -y groupinstall core base "Development Tools" | ||
− | + | ''''安装其他的支持包和依赖包''' | |
<pre> | <pre> | ||
yum -y install lynx mariadb-server mariadb php php-mysql php-mbstring tftp-server \ | yum -y install lynx mariadb-server mariadb php php-mysql php-mbstring tftp-server \ |
2015年10月18日 (日) 17:40的版本
Installing FreePBX 13 on CentOS 7
Initial System Setup
用户必须是ROOT 用户权限!
用户必须关闭 selinux. selinux 以免引起其他安装问题
Disable selinux
In /etc/sysconfig/selinux , change the following lines:
sed -i 's/\(^SELINUX=\).*/\SELINUX=disabled/' /etc/sysconfig/selinux
sed -i 's/\(^SELINUX=\).*/\SELINUX=disabled/' /etc/selinux/config
reboot, and verify the selinux status by running 'sestatus'. It should say:
SELinux status: disabled
Update Your System
yum -y update
yum -y groupinstall core base "Development Tools"
'安装其他的支持包和依赖包
yum -y install lynx mariadb-server mariadb php php-mysql php-mbstring tftp-server \ httpd ncurses-devel sendmail sendmail-cf sox newt-devel libxml2-devel libtiff-devel \ audiofile-devel gtk2-devel subversion kernel-devel git php-process crontabs cronie \ cronie-anacron wget vim php-xml uuid-devel sqlite-devel net-tools gnutls-devel php-pear
Install Legacy Pear requirements
pear install Console_Getopt
Firewalld Basic Configuration
开放80端口,管理员界面可以访问此端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --reload
Enable and Start MariaDB
安装MariaDB,确保正常运行,这样freepbx能够正常工作,自动启动工作。
systemctl enable mariadb.service
systemctl start mariadb
Now that our MariaDB database is running, we want to run a simple security script that will remove some dangerous defaults and lock down access to our database system a little bit
mysql_secure_installation
此提示要求输入当前用户密码。因为用户已经安装了MySQL,此输入为空,按ENTER键。此提示要求用户设置root 密码。请不要设置用户密码。在脚本运行时,我们将会自动创建。其他引导设置可以输入YES。
Enable and Start Apache
FreePBX 使用Apache 服务器,所以页面服务器必须是启动状态。
systemctl enable httpd.service systemctl start httpd.service '''Install Dependencies for Google Voice (if required)''' '''Install iksemel ''' ''' cd /usr/src wget https://iksemel.googlecode.com/files/iksemel-1.4.tar.gz tar xf iksemel-*.tar.gz rm -f iksemel-1.4.tar.gz cd iksemel-* ./configure make make install '''Add the Asterisk User''' adduser asterisk -M -c "Asterisk User" '''Install and Configure Asterisk''' '''Download Asterisk source files.''' 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-1.4-current.tar.gz wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-13-current.tar.gz wget -O jansson.tar.gz https://github.com/akheron/jansson/archive/v2.7.tar.gz wget http://www.pjsip.org/release/2.4/pjproject-2.4.tar.bz2
Compile and install DAHDI
如果用户没有安装Asterisk 语音卡可以忽略安装Dahdi(特别是虚拟机安装,无需此步骤)。
cd /usr/src
tar xvfz dahdi-linux-complete-current.tar.gz
tar xvfz libpri-1.4-current.tar.gz
rm -f dahdi-linux-complete-current.tar.gz libpri-1.4-current.tar.gz
cd dahdi-linux-complete-*
make all
make install
make config
cd /usr/src/libpri-1.4.*
make
make install
Compile and install pjproject
cd /usr/src
tar -xjvf pjproject-2.4.tar.bz2
rm -f pjproject-2.4.tar.bz2
cd pjproject-2.4
CFLAGS='-DPJ_HAS_IPV6=1' ./configure --prefix=/usr --enable-shared --disable-sound\
--disable-resample --disable-video --disable-opencore-amr --libdir=/usr/lib64
make dep
make
make install
Compile and 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
Compile and install Asterisk
cd /usr/src
tar xvfz asterisk-13-current.tar.gz
rm -f asterisk-13-current.tar.gz
cd asterisk-*
contrib/scripts/install_prereq install
./configure --libdir=/usr/lib64
contrib/scripts/get_mp3_source.sh
make menuselect
You will be prompted at the point to pick which modules to build. Most of them will already be enabled, but if you want to have MP3 support (eg, for Music on Hold), you need to manually turn on 'format_mp3' on the first page.
After selecting 'Save & Exit' you can then continue
make
make install
make config
ldconfig
chkconfig asterisk off
''''Install Asterisk Soundfiles.
The 'make install' above installs a standard low-quality base sound file by default. This is suitable if you are on a small, underpowered system (such as a Rasberry Pi), but on a larger system you should install higher quality soundfiles. Note that this installs the (8khz) 'wav' soundfiles and G722 (High Definition 'Wideband') audio.
cd /var/lib/asterisk/sounds
wget http://downloads.asterisk.org/pub/telephony/sounds/asterisk-core-sounds-en-wav-current.tar.gz
wget http://downloads.asterisk.org/pub/telephony/sounds/asterisk-extra-sounds-en-wav-current.tar.gz
tar xvf asterisk-core-sounds-en-wav-current.tar.gz
rm -f asterisk-core-sounds-en-wav-current.tar.gz
tar xfz asterisk-extra-sounds-en-wav-current.tar.gz
rm -f asterisk-extra-sounds-en-wav-current.tar.gz
# Wideband Audio download
wget http://downloads.asterisk.org/pub/telephony/sounds/asterisk-core-sounds-en-g722-current.tar.gz
wget http://downloads.asterisk.org/pub/telephony/sounds/asterisk-extra-sounds-en-g722-current.tar.gz
tar xfz asterisk-extra-sounds-en-g722-current.tar.gz
rm -f asterisk-extra-sounds-en-g722-current.tar.gz
tar xfz asterisk-core-sounds-en-g722-current.tar.gz
rm -f asterisk-core-sounds-en-g722-current.tar.gz
Set Asterisk ownership permissions.
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/
Install and Configure FreePBX
A few small modifications to 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
Download and install FreePBX.
cd /usr/src
wget http://mirror.freepbx.org/modules/packages/freepbx/freepbx-13.0-latest.tgz
tar xfz freepbx-13.0-latest.tgz
rm -f freepbx-13.0-latest.tgz
cd freepbx
./start_asterisk start
./install -n
That's it!
You can now start using FreePBX. Open up your web browser and connect to the IP address or hostname of your new FreePBX server. You will see the Admin setup page, which is where you set your 'admin' account password, and configure an email address to receive update notifications.
We hope you enjoy using FreePBX 13!
Automatic Startup
Please note you need to set up FreePBX to start asterisk (and it's associated services) on bootup. [/display/FOP/Example+systemd+startup+script+for+FreePBX You can view an example systemd startup script here].