Come installare Asterisk 18 su Ubuntu 20.04
Asterisk è un popolare framework PBX open source per lo sviluppo di gateway VoIP. È una soluzione di telefonia online utilizzata da privati, piccole e grandi imprese, imprese e vari governi.
Asterisk utilizza un protocollo VoIP per effettuare chiamate su Internet utilizzando TCP/IP anziché la tradizionale rete fissa. Le sue funzionalità includono segreteria telefonica, musica in attesa, chiamate in conferenza, avviso di chiamata, registrazione delle chiamate, risposta vocale interattiva, messaggistica SMS, distribuzione automatica delle chiamate e altro ancora. Asterisk può essere installato su diversi sistemi operativi, tra cui Linux, NetBSD, macOS e Solaris, tra gli altri.
In questo tutorial, impariamo come installa Asterisco 18 in poi Ubuntu 20.04.
Prerequisiti
Nei repository di Ubuntu possiamo trovare il pacchetto Asterisk, ma è una versione precedente. Per ottenere l’ultima versione, è necessario installare Asterisk dal sorgente.
Innanzitutto, aggiorna il tuo sistema Ubuntu:
$ sudo apt update
Successivamente, installa i pacchetti necessari per compilare Asterisk dal sorgente:
$ sudo apt install wget build-essential git autoconf subversion pkg-config libtool
Installazione di DAHDI e LibPRI
DAHDI è uno strumento aggiuntivo che consente ad Asterisk di comunicare con telefoni analogici e digitali. La libreria LibPRI viene utilizzata per comunicare con le connessioni ISDN. Se non hai bisogno di queste librerie, puoi saltare questa sezione.
$ sudo git clone -b next git://git.asterisk.org/dahdi/linux dahdi-linux
$ cd dahdi-linux
$ sudo make
$ sudo make install
$ cd ..
$ 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
Eseguire i seguenti comandi per compilare e creare LibPRI:
$ cd ..
$ sudo git clone https://gerrit.asterisk.org/libpri libpri
$ cd libpri
$ sudo make
$ sudo make install
Installa Asterisco su Ubuntu
Innanzitutto, clona il repository del codice sorgente di Asterisk (questo potrebbe richiedere del tempo):
$ sudo git clone -b 18 https://gerrit.asterisk.org/asterisk asterisk-18
Al momento della stesura di questo tutorial, l’ultima versione di Asterisk era la 18.7.2 che compileremo e installeremo.
Quindi, scarica i sorgenti MP3 utilizzando lo script shell necessario per creare il modulo MP3 e utilizzare i file MP3 su Asterisk:
$ sudo contrib/scripts/get_mp3_source.sh
Rotolo install_prereq
script per installare le dipendenze necessarie (anche questo passaggio richiederà del tempo):
$ sudo contrib/scripts/install_prereq install
Nel mezzo del processo, ti verrà chiesto di inserire il prefisso:
Al termine, l’output dovrebbe essere:
Processing triggers for libglib2.0-0:amd64 (2.64.6-1~ubuntu20.04.4) … Processing triggers for libc-bin (2.31-0ubuntu9.2) … Processing triggers for systemd (245.4-4ubuntu3.13) … Processing triggers for man-db (2.9.1-1) … Processing triggers for install-info (6.7.0.dfsg.2-5) … Setting up libgmime-2.6-dev (2.6.23+dfsg1-4) … Setting up libgmime-3.0-dev:amd64 (3.2.7-1) … ####################################### ## install completed successfully #######################################
Ora dobbiamo verificare se tutte le dipendenze sul tuo sistema sono presenti per poter compilare il codice sorgente. Quindi eseguire il seguente comando:
$ sudo ./configure
Alla fine, verrai accolto con un bel logo ASCII Asterisk.
Successivamente, seleziona i moduli che desideri compilare e installare. Per accedere a menuselect, digitare quanto segue:
$ sudo make menuselect
Seleziona l’opzione “mp3_format” dal menu per costruire il modulo MP3. Navigare utilizzando i tasti freccia, quindi premere Invio per selezionare l’opzione. Seleziona qualsiasi altra opzione che desideri abilitare. Ora premi F12 per salvare e uscire dalla schermata.
Dovresti vedere un output del terminale simile a:
menuselect changes saved!
make[1]: Leaving directory '/home/linoxide/asterisk-18'
Per iniziare a compilare il codice sorgente, eseguire il comando make:
$ sudo make -j2
A seconda di quanti core CPU ha il tuo computer, puoi regolare il parametro -j al numero di core che il tuo computer ha per accelerare il tempo di compilazione.
Se tutto è andato a buon fine, dovresti ottenere:
+--------- Asterisk Build Complete ---------+
+ Asterisk has successfully been built, and +
+ can be installed by running: +
+ +
+ make install +
+-------------------------------------------+
Una volta completata la compilazione, installa Asterisk e i suoi moduli digitando:
$ sudo make install
È possibile installare i file di configurazione generici:
$ sudo make samples
Installa anche i file di configurazione di base del PBX:
$ sudo make basic-pbx
Infine, esegui quanto segue per installare lo script di inizializzazione di Asterisk e aggiornare la cache della libreria condivisa:
$ sudo make config
$ sudo ldconfig
Crea utente Asterisco
Per motivi di sicurezza, si consiglia di creare un utente non root per eseguire Asterisk. Creeremo un nuovo utente di sistema su cui verrà eseguito Asterisk. Eseguire il comando seguente per creare il nuovo utente denominato asterisk
:
$ sudo adduser --system --group --no-create-home --gecos "Asterisk PBX" asterisk
L’output dovrebbe essere:
Adding system user asterisk' (UID 114) ... Adding new groupasterisk' (GID 120) …
Adding new user asterisk' (UID 114) with groupasterisk' …
Per configurare Asterisk in modo che venga eseguito come utente appena creato, apri /etc/default/asterisk
file e decommentare le seguenti due righe vicino all’inizio (eliminare il # davanti alle righe):
$ sudo nano /etc/default/asterisk
AST_USER="asterisk"
AST_GROUP="asterisk"
Poi aggiungi asterisk
utente ai seguenti gruppi:
$ sudo usermod -a -G dialout,audio asterisk
Dobbiamo anche modificare la proprietà di tutti i file e le cartelle di asterisk in modo che Asterisk possa accedere a tali file:
$ 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
Esegui asterisco
Tutto ciò che resta da fare è avviare il servizio Asterisk con il seguente comando:
$ sudo systemctl start asterisk
Verifica che Asterisk sia in esecuzione connettendoti all’interfaccia della riga di comando (CLI) di Asterisk digitando:
$ sudo asterisk -vvvr
Dovresti vedere un output simile a questo:
Connected to Asterisk GIT-18-804b1987fb currently running on linoxide (pid = 31426)
linoxide*CLI>
Ora abilita l’avvio del servizio all’avvio:
$ sudo systemctl enable asterisk
Configura il firewall
Se disponi di una configurazione firewall, apri le porte HTTP e le porte 5060,5061:
$ sudo ufw allow 5060/udp
$ sudo ufw allow 10000:20000/udp
Conclusione
Congratulazioni! Hai installato e configurato correttamente il server Asterisk su Ubuntu 20.04
Per ulteriori informazioni, puoi controllare sito ufficiale di Asterisco.