Freepbx setup

Manual Installing FreePBX on a Linux Server

FreePBX is an open-source GUI (Graphical User Interface) that controls and manages Asterisk, a powerful VoIP PBX system. This guide walks you through installing FreePBX on a dedicated server.

Prerequisites

Before installing FreePBX, ensure you have the following:

  • A dedicated or virtual server (Recommended: 2+ CPU cores, 4GB RAM, 50GB storage)
  • A fresh installation of CentOS 7 (or Rocky Linux 8/AlmaLinux 8 for newer versions)
  • Root access to the server
  • Stable internet connection

Step 1: Update Your System

Update the system packages before installing dependencies:

yum update -y
reboot

Step 2: Configure SELinux & Firewall

Set SELinux to permissive mode:

setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=permissive/' /etc/selinux/config

Allow FreePBX and Asterisk through the firewall:

firewall-cmd --permanent --add-service={http,https}
firewall-cmd --permanent --add-port=5060-5061/udp
firewall-cmd --permanent --add-port=10000-20000/udp
firewall-cmd --reload

Step 3: Install Required Packages

Install dependencies:

yum groupinstall -y "Development Tools"
yum install -y epel-release
yum install -y wget vim net-tools perl bzip2 tar sqlite

Install MariaDB, Apache, and PHP:

yum install -y mariadb-server mariadb
yum install -y httpd php php-mysql php-xml php-mbstring php-process php-pear
systemctl enable --now mariadb httpd

Secure MariaDB:

mysql_secure_installation

Follow the prompts to set a root password and secure your database.

Step 4: Install Asterisk

Download and compile Asterisk:

cd /usr/src
wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-20-current.tar.gz
tar xvf asterisk-20-current.tar.gz
cd asterisk-20.*
contrib/scripts/install_prereq install
./configure --with-pjproject-bundled --with-jansson-bundled --with-crypto --with-ssl
make menuselect

Enable necessary modules in the menu, then proceed with compilation:

make -j$(nproc)
make install
make samples
make config
ldconfig
systemctl enable asterisk

Step 5: Install FreePBX

Download and install FreePBX:

cd /usr/src
wget https://mirror.freepbx.org/modules/packages/freepbx/freepbx-16.0-latest.tgz
tar xvf freepbx-16.0-latest.tgz
cd freepbx
./install -n

Start FreePBX services:

fwconsole restart
systemctl enable httpd

Step 6: Access the Web Interface

  • Open a web browser and go to http://your-server-ip
  • Follow the setup wizard to configure FreePBX

Conclusion

You now have a fully functional FreePBX installation. Customize settings, configure SIP trunks, and set up extensions as needed. Regularly update your system for security and stability.

FreePBX
FreePBX is a web-based open-source graphical user interface (GUI) that manages Asterisk, a voice over IP (VoIP) and telephony server. FreePBX is licensed

freepbx setup on ubuntu
0 0 votes
Article Rating
Subscribe
Notify of
0 Comments
Inline Feedbacks
View all comments

0
Would love your thoughts, please comment.x
()
x