Inštalácia Asterisk 16 na Debian 9 s FreePBX 15.

ssh root@x.x.x.x

Zadajte svoje heslo

aby ste nemusel používať stále SUDO tak napíšte príkaz:

sudo -i

Urobte update a upgrade

apt update && sudo apt -y upgrade

Teraz nainštalujte balíčky, pre pobočkovú ústredňu

apt-get install git curl wget \
libnewt-dev libssl-dev libncurses5-dev \
subversion libsqlite3-dev build-essential \
libjansson-dev libxml2-dev  uuid-dev

Stiahnite Asterisk. Asterisk nie je dostupný z repozitárov, tak inštalácia bude pokračovať zo zdroja

apt policy asterisk

Stiahnite teraz Asterisk do lokálneho systému

cd /usr/src/
curl -O http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-16-current.tar.gz

Extrahujte súbory

tar xvf asterisk-16-current.tar.gz
cd asterisk-16*/

Spustite príkaz a stiahnite si knižnicu dekodérov mp3

contrib/scripts/get_mp3_source.sh

Skontrolujte, či je všetko v poriadku, a napíšte telekomunikačný kód krajiny pre ktorú robíte ústredňu. Na Slovensku je to 421

contrib/scripts/install_prereq install

Po nainštalovaní všetkých balíkov pre pripravený zostaviť Asterisk zo zdrojového kódu. Spustite skript, ktorý je zodpovedný za všetky závislosti.

./configure

Riešenie problémov: Môže sa naskytnúť chybová hláška:

configure: *** Asterisk requires libjansson >= 2.11 and no system copy was found. configure: *** Please install the ‘libjansson’ development package or configure: *** use ‘./configure –with-jansson-bundled’
./configure --with-jansson-bundled
./install -n

Nastavte menu

make menuselect

Po dokončení uložte a ukončite inštaláciu

make
make install
make samples
make config
ldconfig

Vytvorte samostatného používateľa a skupinu na spustenie služieb s Asterisk a priraďte správne práva

groupadd asterisk
useradd -r -d /var/lib/asterisk -g asterisk asterisk
usermod -aG audio,dialout asterisk
chown -R asterisk.asterisk /etc/asterisk
chown -R asterisk.asterisk /var/{lib,log,spool}/asterisk
chown -R asterisk.asterisk /usr/lib/asterisk

Nastavte Asterisk defaultného užívateľa na Asterisk. Môžete použiť nano, alebo vim textový editor. Vim musíte doinštalovať

apt-get install vim
vim /etc/default/asterisk
AST_USER="asterisk"
AST_GROUP="asterisk"
vim /etc/asterisk/asterisk.conf
runuser = asterisk ; The user to run as.
rungroup = asterisk ; The group to run as.

Reštartujte Asterisk

systemctl restart asterisk

Povoľte, aby sa Asterisk spúšťal pri boote

systemctl enable asterisk

Skontrolujte či služba beží

systemctl status asterisk.service 

Môže sa Vám objaviť hláška:

radcli: rc_read_config: rc_read_config: can't open /etc/radiusclient-ng/radiusclient.conf: No such file or directory

Riešenie:

sed -i 's";\[radius\]"\[radius\]"g' /etc/asterisk/cdr.conf
sed -i 's";radiuscfg => /usr/local/etc/radiusclient-ng/radiusclient.conf"radiuscfg => /etc/radcli/radiusclient.conf"g' /etc/asterisk/cdr.conf
sed -i 's";radiuscfg => /usr/local/etc/radiusclient-ng/radiusclient.conf"radiuscfg => /etc/radcli/radiusclient.conf"g' /etc/asterisk/cel.conf

Reštartujte Asterisk

reboot

Nainštalujte FreePBX GUI rozhranie. Začneme s inštaláciou Mariadb server

apt install mariadb-server

Nainštalujte Apache

apt-get install apache2

Keď nainštalujete Apache, tak to môžete verifikovať, že zadáte IP adresu serveru na, ktorý ste inštalovali Asterisk.

Potom urobte nastavenia, ktoré sú popísane nižšie:

cp /etc/apache2/apache2.conf /etc/apache2/apache2.conf_orig
sed -i 's/^\(User\|Group\).*/\1 asterisk/' /etc/apache2/apache2.conf
sed -i 's/AllowOverride None/AllowOverride All/' /etc/apache2/apache2.conf

Nainštalujte PHP

apt-get -y install wget libapache2-mod-php php php-{pear,cgi,common,curl,mbstring,gd,gettext,mysql,bcmath,zip,xml,imap,json,snmp,fpm}

Zmeňte veľkosť upload-u v PHP

sed -i 's/\(^upload_max_filesize = \).*/\120M/' /etc/php/7.0/cli/php.ini
sed -i 's/\(^upload_max_filesize = \).*/\120M/' /etc/php/7.0/fpm/php.ini

Stiahnite a nainštalujte FreePBX

cd /usr/src
wget http://mirror.freepbx.org/modules/packages/freepbx/freepbx-15.0-latest.tgz
tar xfz freepbx-15.0-latest.tgz
rm -f freepbx-15.0-latest.tgz
cd freepbx
./start_asterisk start
apt install nodejs
./install -n

Pri ./install -n môže vypísať hlášku:

Checking if NodeJS is installed and we can get a version from it...sh: 1: node: not found
NodeJS 8 or higher is not installed. This is now a requirement

Riešenie:

curl -sL https://deb.nodesource.com/setup_12.x | bash -
apt-get install -y nodejs

Znovu napíšte príkaz

./install -n

Teraz, otvorte:

vim /etc/asterisk/asterisk.conf

A zmeňte [directories](!) na [directories]

Povoľte Apache a reštartujte ho:

a2enmod rewrite
systemctl restart apache2

Už sa len prihláste cez, webový prehliadač pomocou IP adresy X.X.X.X/admin

Dôležité pri výbere aplikácie je to, aby spĺňala tzv. push up aplikáciu. To znamená, že aj keď máte mobilný telefón zablokovaný, tak aplikácia ako náhle bude na ňu smerovaný hovor telefón sa aktivuje a Vy môžete telefonovať.