Asterisk (PBX) - Wikipedia Asterisk Installation

In previous article i install the Asterisk on Raspbian Bullseye and now will install on Ubuntu 20.0.4 runs on Raspberry Pi 4 hardware.

Asterisk is well knows IP PBX service for years, in the past i used to install the E1 card or FXO card to make it work with PSTN service.

Let’s start doing the installation.

 

Prerequisites

$sudo apt update
$ sudo apt install wget build-essential git autoconf subversion pkg-config libtool

Install DAHDI and LibPRI

cd /usr/src/
sudo git clone -b next git://git.asterisk.org/dahdi/linux dahdi-linux
cd dahdi-linux
sudo make
sudo make install
cd /usr/src/
sudo git clone -b next git://git.asterisk.org/dahdi/tools dahdi-tools
cd dahdi-tools
sudo autoreconf -i
sudo ./configure
sudo make install
sudo make install-config
sudo dahdi_genconf modules
cd /usr/src/
sudo git clone https://gerrit.asterisk.org/libpri libpri
cd libpri
sudo make
sudo make install

Installing Asterisk

cd /usr/src/
sudo git clone -b 18 https://gerrit.asterisk.org/asterisk asterisk-18

cd asterisk-18/
sudo contrib/scripts/get_mp3_source.sh
sudo contrib/scripts/install_prereq install
sudo ./configure
sudo make menuselect
sudo make -j2
sudo make install
sudo make samples
sudo make basic-pbx
sudo make config
sudo ldconfig

Creating Asterisk User

sudo adduser --system --group --home /var/lib/asterisk --no-create-home --gecos "Asterisk PBX" asterisk

To run asterisk service with asterisk user

sudo nano /etc/default/asterisk
# Uncomment the following and set them to the user/groups that you
# want to run Asterisk as. NOTE: this requires substantial work to
# be sure that Asterisk's environment has permission to write the
# files required for its operation, including logs, its comm
# socket, the asterisk database, etc.
AST_USER="asterisk"
AST_GROUP="asterisk"

Add asterisk user to dialout and audio group

sudo usermod -a -G dialout,audio asterisk

 

Change the ownership and permission on asterisk files and directories

sudo chown -R asterisk: /var/{lib,log,run,spool}/asterisk /usr/lib/asterisk /etc/asterisk
sudo chmod -R 750 /var/{lib,log,run,spool}/asterisk /usr/lib/asterisk /etc/asterisk

Start asterisk

sudo systemctl start asterisk

sudo systemctl enable asterisk

If you are running on strict firewall rule, enable following rule. ufw is for ubuntu and for other firewall you can the similar setting.

SIP default port is UDP 5060

sudo ufw allow 5060/udp

 

RTP port is 10000:20000 UDP

sudo ufw allow 10000:20000/udp

 

 

Leave a Reply

Your email address will not be published. Required fields are marked *