Introduzione
Asterisk è una popolare piattaforma PBX open source per lo sviluppo di applicazioni di comunicazione come server per conferenze e gateway VoIP. È utilizzato da individui, piccole imprese, grandi imprese e governi in tutto il mondo.
Le funzionalità di Asterisk includono posta vocale, musica in attesa, chiamate in conferenza, accodamento delle chiamate, registrazione delle chiamate, risposta vocale interattiva, messaggi SMS e altro ancora.
Questo tutorial spiega come installare Asterisk su Ubuntu 20.04 LTS Focal Fossa.
I repository di Ubuntu includono una versione precedente di Asterisk. Installeremo l'ultimo Asterisk dal codice sorgente.
Se desideri installare Asterisk su un server in remoto continua a leggere, altrimenti salta il primo paragrafo "Connessione al Server" e leggi il successivo.
Connessione al Server
Per accedere al server, è necessario conoscere l'indirizzo IP. Avrai anche bisogno dell'username e della password per l'autenticazione. Per connettersi al server come utente root digitare il seguente comando:
ssh root@IP_DEL_SERVER
Successivamente sarà necessario inserire la password dell'utente root.
Se non utilizzate l'utente root potete connettervi con un'altro nome utente utilizzando lo stesso comando, quindi modificare root con il vostro nome_utente:
ssh nome_utente@IP_DEL_SERVER
Successivamente vi verrà chiesto di inserire la password del vostro utente.
La porta standard per connettersi tramite ssh è la 22, se il vostro server utilizza una porta diversa, sarà necessario specificarla utilizzando il parametro -p, quindi digitare il seguente comando:
ssh nome_utente@IP_DEL_SERVER -p PORTA
Prerequisiti
Installa i seguenti pacchetti necessari per scaricare e creare Asterisk:
sudo apt update
sudo apt install wget build-essential git autoconf subversion pkg-config libtool
Installare DAHDI e LibPRI
DAHDI è un insieme di driver e utilità che consente ad Asterisk di comunicare con telefoni analogici e digitali. La libreria LibPRI consente ad Asterisk di comunicare con le connessioni ISDN. Se non hai bisogno di queste librerie, puoi saltare questa sezione.
Passa alla directory /usr/src
e scarica e installa DAHDI:
cd /usr/src/
sudo git clone -b next git://git.asterisk.org/dahdi/linux dahdi-linux
cd dahdi-linux
sudo make
sudo make install
Successivamente:
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
Esegui i seguenti comandi per creare LibPRI:
cd /usr/src/
sudo git clone https://gerrit.asterisk.org/libpri libpri
cd libpri
sudo make
sudo make install
Installare di Asterisk
Clona il sorgente Asterisk nella directory /usr/src
:
cd /usr/src/
sudo git clone -b 18 https://gerrit.asterisk.org/asterisk asterisk-18
Al momento della scrittura, l'ultima versione di Asterisk è 18.x. Se è disponibile una nuova versione, modificare il numero del branch nel comando precedente.
Prima di continuare con i passaggi successivi, passare alla directory di origine di Asterisk:
cd asterisk-18/
Scarica i sorgenti MP3 necessari per costruire il modulo MP3 e usa i file MP3 su Asterisk:
sudo contrib/scripts/get_mp3_source.sh
Esegui lo script install_prereq
per installare le dipendenze necessarie:
sudo contrib/scripts/install_prereq install
Lo script configure
esegue diversi controlli per assicurarsi che tutte le dipendenze sul sistema siano presenti. Esegui lo script digitando:
sudo ./configure
Il passaggio successivo consiste nel selezionare i moduli che si desidera compilare e installare. Accedere a menuelect, digitando:
sudo make menuselect
Seleziona l'opzione "format_mp3" per dire ad Asterisk di creare il modulo MP3:
Una volta terminato, passare al pulsante "Salva ed esci" e premere "Invio".
Avvia il processo di compilazione:
sudo make -j2
La compilazione potrebbe richiedere del tempo, a seconda del sistema. È possibile modificare il flag -j
in base al numero di core nel processore.
Una volta completato, installa Asterisk ei suoi moduli digitando:
sudo make install
È possibile installare i file di configurazione generici con la documentazione di riferimento digitando:
sudo make samples
Oppure installa i file di configurazione del PBX di base:
sudo make basic-pbx
L'ultimo passaggio è installare lo script di inizializzazione Asterisk digitando:
sudo make config
È anche una buona idea eseguire ldconfig
per aggiornare la cache delle librerie condivise:
sudo ldconfig
Creare un utente Asterisk
Per impostazione predefinita, Asterisk viene eseguito come utente root. Creeremo un nuovo utente di sistema e configureremo Asterisk in modo che venga eseguito come utente appena creato per motivi di sicurezza.
Eseguire il comando seguente per creare un nuovo utente di sistema denominato asterisk
:
sudo adduser --system --group --home /var/lib/asterisk --no-create-home --gecos "Asterisk PBX" asterisk
Per configurare Asterisk in modo che venga eseguito come utente asterisk
, apri il file /etc/default/asterisk
e rimuovi il commento dalle due righe seguenti:
sudo nano /etc/default/asterisk
AST_USER="asterisk"
AST_GROUP="asterisk"
Aggiungi l'utente asterisk
ai gruppi dialout
e audio
:
sudo usermod -a -G dialout,audio asterisk
È inoltre necessario modificare la proprietà e le autorizzazioni di tutti i file e le directory Asterisk in modo che l'utente 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
Avviare Asterisk
Ora che sei pronto, avvia il servizio Asterisk con il seguente comando:
sudo systemctl start asterisk
Per verificare che Asterisk sia in esecuzione, connettersi all'interfaccia della riga di comando (CLI) di Asterisk digitando:
sudo asterisk -vvvr
Vedrai il prompt della CLI Asterisk predefinito:
Connected to Asterisk GIT-18-759f906dr5 currently running on ubuntu2004 (pid = 82101)
ubuntu2004*CLI>
L'ultimo passaggio consiste nell'abilitare l'avvio del servizio Asterisk all'avvio con:
sudo systemctl enable asterisk
Configurare firewall
Il firewall proteggerà il tuo server dal traffico indesiderato.
Se non hai un firewall configurato sul tuo server, puoi consultare la nostra guida su come impostare un firewall con ufw su ubuntu.
Per impostazione predefinita, SIP utilizza la porta UDP 5060, per aprire la porta run:
sudo ufw allow 5060/udp
Se hai abilitato il protocollo RTP (Real Time Protocol), devi anche aprire il seguente intervallo di porte:
sudo ufw allow 10000:20000/udp
Sentiti libero di regolare il firewall in base alle tue esigenze.
Conclusione
Ti abbiamo mostrato come installare l'ultima versione di Asterisk dalla fonte su Ubuntu 20.04 LTS Focal Fossa.
Per saperne di più su come configurare e utilizzare Asterisk controlla la documentazione ufficiale.