FreePBX is a web-based open-source graphical user interface (GUI) that manages Asterisk, a voice over IP and telephony server. FreePBX is licensed under the GNU General Public License version 3. It is a component of the FreePBX Distro, which is an independently maintained Linux system derived from the source code of the CentOS distribution, having Asterisk pre-installed. It is also included in various third-party distributions such as The FreePBX Distro and AsteriskNow. So get ready, in this guide you will learn how to install FreePBX on RHEL 8 / CentOS 8.
This guide assumes that you have already installed Asterisk on your RHEL / CentOS 8 Server.
Click here if you want to install Asterisk on your RHEL / CentOS 8 server.
Step 1: Disable SELinux
Open file /etc/selinux/config using below command and modify a line from
SELINUX=enforcing
to
SELINUX=disabled
vi /etc/selinux/config
save changes and exit
Now reboot your machine
reboot
Step 2: Install Dependencies
dnf install git wget crontabs cronie tftp-server ncurses-devel sendmail sendmail-cf newt-devel libxml2-devel libtiff-devel gtk2-devel subversion kernel-devel @php cronie-anacron vim php-xml sqlite-devel net-tools gnutls-devel unixODBC -y
Install and configure Apache, PHP and MYSQL database
Install Apache webserver
dnf install httpd -y
Now start and enable Apache service on boot.
systemctl start httpd systemctl enable httpd
Adding apache ports in the firewall.
firewall-cmd --add-port={80/tcp,443/tcp} --permanent firewall-cmd --reload
Install PHP and FreePBX required extensions
dnf install php php-common php-gettext php-bcmath php-process php-snmp php-pecl-apcu php-curl php-pear php-gd php-xml php-json php-pcntl php-zip php-cli php-pear php-pdo php-mysqlnd php-pgsql php-gd php-mbstring php-opcache php-xml -y
Set php maximum file upload size
vi /etc/php.ini
and set upload_max_filesize = 20M
After that, restart apache and php-fpm service and enable php-fpm on boot
systemctl restart httpd php-fpm systemctl enable php-fpm
Install MariaDB
dnf install mariadb-server -y
Start and enable MariaDB service on boot.
systemctl start mariadb systemctl enable mariadb
Then you have to complete MariaDB installation
Note: Do not set MariaDB password as it will secure by FreePBX installation Script automatically
mysql_secure_installation
Set root password? [Y/n] n
New password: password
Re-enter new password: password
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y
Step 2: Install and configure FreePBX on RHEL 8 / CentOS 8
So, switch into /var/www/html/ directory
cd /var/www/html/
After that, download FreePBX
wget http://mirror.freepbx.org/modules/packages/freepbx/freepbx-14.0-latest.tgz
Then, uncompress Downloaded archive and run the installation script
tar xf freepbx-14.0-latest.tgz cd freepbx ./start_asterisk start
./install -n
Upon successful installation, you will see below screen.
Restart Apache service
systemctl restart httpd
Step 3: Access FreePBX Web Interface
Then, open your browser and browse http://YOUR-SERVER-IP/. You will see the Admin setup page, set you admin user and its password and click on “Setup System”
So, you will be redirected to below screen.
After that, click on “FreePBX Administrator” and you will get below screen, type your login details to access Asterisk FreePBX Admin Panel.
After successful login you will see the following screen, now make your desired configuration and use FreePBX
So, that’s it! You know how to install FreePBX on RHEL 8 and CentOS 8.
Hi,
I tried installing two times on different machine.
But when I trie to go to the webinterface I get an error 500.
What to do?
Anybody home?