Ricerca nel sito web

Come installare il server VoIP Asterisk 17 su Ubuntu 20.04


Su questa pagina

  1. Prerequisiti
  2. Per iniziare
  3. Installa Asterisco
  4. Crea un utente Astersik
  5. Configura Asterisco
  6. Abilita GUI Asterisk
  7. Installa la GUI di Asterisk
  8. Accedi alla GUI di Asterisk
  9. Conclusione

Asterisk è un server VoIP gratuito e open source creato da Sangoma. Viene utilizzato per creare un'infrastruttura di telefonia VoIP per organizzazioni di tutte le dimensioni. VoIP è un protocollo Voice Over Internet utilizzato per effettuare una chiamata utilizzando lo stack TCP/IP. Con il VoIP, puoi effettuare una chiamata dal tuo dispositivo mobile o computer verso altri dispositivi senza alcun costo. Funziona su sistemi operativi basati su Unix e Linux ed è in grado di connettersi a qualsiasi rete di telefonia globale tradizionale. Offre una serie di funzioni tra cui chiamate in conferenza, posta vocale, IVR e distribuzione automatica delle chiamate.

In questo tutorial impareremo come installare il server Asterisk e la GUI Asterisk su Ubuntu 20.04.

Prerequisiti

  • Un server che esegue Ubuntu 20.04.
  • Nel tuo server è configurato un indirizzo IP statico.
  • Sul server è configurata una password di root.

Iniziare

Innanzitutto, aggiorna i pacchetti di sistema all'ultima versione con il seguente comando:

apt-get update -y

Una volta aggiornato il sistema, sarà necessario installare altre dipendenze richieste da Asterisk. Puoi installarli tutti con il seguente comando:

apt-get install gnupg2 software-properties-common git curl wget libnewt-dev libssl-dev libncurses5-dev subversion libsqlite3-dev build-essential libjansson-dev libxml2-dev uuid-dev -y

Dopo aver installato tutti i pacchetti, puoi procedere al passaggio successivo.

Installa Asterisco

Per impostazione predefinita, l'ultima versione di Asterisk non è disponibile nel repository predefinito di Ubuntu 20.04. Quindi dovrai scaricarlo e compilarlo dalla fonte.

Innanzitutto, scarica l'ultima versione di Asterisk con il seguente comando:

wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-17-current.tar.gz

Una volta scaricato, estrai il file scaricato con il seguente comando:

tar -xvzf asterisk-17-current.tar.gz

Quindi, cambia la directory nella directory estratta e installa tutti i moduli MP3 richiesti con il seguente comando:

cd asterisk-17.7.0
contrib/scripts/get_mp3_source.sh

Dovresti ottenere il seguente output:

A    addons/mp3
A    addons/mp3/MPGLIB_README
A    addons/mp3/common.c
A    addons/mp3/huffman.h
A    addons/mp3/tabinit.c
A    addons/mp3/Makefile
A    addons/mp3/README
A    addons/mp3/decode_i386.c
A    addons/mp3/dct64_i386.c
A    addons/mp3/MPGLIB_TODO
A    addons/mp3/mpg123.h
A    addons/mp3/layer3.c
A    addons/mp3/mpglib.h
A    addons/mp3/decode_ntom.c
A    addons/mp3/interface.c
Exported revision 202.

Successivamente, installa altre dipendenze con il seguente comando:

contrib/scripts/install_prereq install

Dovresti vedere il seguente output:

#############################################
## install completed successfully
#############################################

Successivamente, configura l'asterisco con il seguente comando:

./configure

Dovresti ottenere il seguente output:

configure: Menuselect build configuration successfully completed

               .$$$$$$$$$$$$$$$=..      
            .$7$7..          .7$$7:.    
          .$$:.                 ,$7.7   
        .$7.     7$$$$           .$$77  
     ..$$.       $$$$$            .$$$7 
    ..7$   .?.   $$$$$   .?.       7$$$.
   $.$.   .$$$7. $$$$7 .7$$$.      .$$$.
 .777.   .$$$$$$77$$$77$$$$$7.      $$$,
 $$$~      .7$$$$$$$$$$$$$7.       .$$$.
.$$7          .7$$$$$$$7:          ?$$$.
$$$          ?7$$$$$$$$$$I        .$$$7 
$$$       .7$$$$$$$$$$$$$$$$      :$$$. 
$$$       $$$$$$7$$$$$$$$$$$$    .$$$.  
$$$        $$$   7$$$7  .$$$    .$$$.   
$$$$             $$$$7         .$$$.    
7$$$7            7$$$$        7$$$      
 $$$$$                        $$$       
  $$$$7.                       $$  (TM)     
   $$$$$$$.           .7$$$$$$  $$      
     $$$$$$$$$$$$7$$$$$$$$$.$$$$$$      
       $$$$$$$$$$$$$$$$.                

configure: Package configured for: 
configure: OS type  : linux-gnu
configure: Host CPU : x86_64
configure: build-cpu:vendor:os: x86_64 : pc : linux-gnu :
configure: host-cpu:vendor:os: x86_64 : pc : linux-gnu :

Successivamente, esegui il seguente comando per selezionare e installare alcuni moduli consigliati:

make menuselect

Ti verrà chiesto di selezionare il modulo desiderato. Utilizza i tasti freccia per spostarti e premi il tasto Invio per selezionare come mostrato di seguito:

Abilita i componenti aggiuntivi come mostrato di seguito:

Abilita i moduli audio principali come mostrato di seguito:

Abilita i pacchetti MOH come mostrato di seguito:

Abilita i pacchetti audio extra come mostrato di seguito:

Al termine, fare clic sul pulsante Salva ed esci per salvare le modifiche e installare tutti i componenti aggiuntivi.

Successivamente, dovrai creare l'asterisco. Puoi farlo con il seguente comando:

make

Dovresti vedere il seguente output:

 +--------- Asterisk Build Complete ---------+
 + Asterisk has successfully been built, and +
 + can be installed by running:              +
 +                                           +
 +                make install               +
 +-------------------------------------------+

Successivamente, installa Astersik, config e sample eseguendo il seguente comando:

make install
make samples
make config
ldconfig

Una volta terminato, puoi procedere al passaggio successivo.

Crea un utente Astersik

Successivamente, sarà necessario creare l'utente Asterisk, il gruppo e modificare la proprietà della directory di configurazione di Asterisk.

Innanzitutto, crea un utente e un gruppo con il seguente comando:

groupadd asterisk
useradd -r -d /var/lib/asterisk -g asterisk asterisk

Successivamente, aggiungi l'utente audio e dialout al gruppo Asterisk eseguendo il seguente comando:

usermod -aG audio,dialout asterisk

Successivamente, modifica la proprietà della directory di configurazione di Asterisk con il seguente comando:

chown -R asterisk.asterisk /etc/asterisk
chown -R asterisk.asterisk /var/{lib,log,spool}/asterisk
chown -R asterisk.asterisk /usr/lib/asterisk

Una volta terminato, puoi procedere al passaggio successivo.

Configura Asterisco

Successivamente, modifica il file /etc/default/asterisk e imposta l'utente predefinito su Asterisk:

nano /etc/default/asterisk

Decommenta le seguenti righe:

AST_USER="asterisk"
AST_GROUP="asterisk"

Salva e chiudi il file quando hai finito, quindi modifica il file di configurazione predefinito di Asterisk e imposta Esegui come utente su asterisco:

nano /etc/asterisk/asterisk.conf

Decommenta le seguenti righe:

runuser = asterisk ; The user to run as.
rungroup = asterisk ; The group to run as.

Salva e chiudi il file, quindi avvia il servizio Asterisk e abilitalo all'avvio al riavvio del sistema con il seguente comando:

systemctl restart asterisk
systemctl enable asterisk

Ora puoi verificare lo stato del servizio Asterisk con il seguente comando:

systemctl status asterisk

Dovresti ottenere il seguente output:

? asterisk.service - LSB: Asterisk PBX
     Loaded: loaded (/etc/init.d/asterisk; generated)
     Active: active (running) since Mon 2020-10-19 12:39:41 UTC; 2min 49s ago
       Docs: man:systemd-sysv-generator(8)
    Process: 47946 ExecStart=/etc/init.d/asterisk start (code=exited, status=0/SUCCESS)
      Tasks: 71 (limit: 4691)
     Memory: 41.7M
     CGroup: /system.slice/asterisk.service
             ??47965 /usr/sbin/asterisk -U asterisk -G asterisk

Oct 19 12:39:41 ubunt4 systemd[1]: Starting LSB: Asterisk PBX...
Oct 19 12:39:41 ubunt4 asterisk[47946]:  * Starting Asterisk PBX: asterisk
Oct 19 12:39:41 ubunt4 asterisk[47946]:    ...done.

Successivamente, verifica la connessione Asterisk con il seguente comando:

asterisk -rvv

Dovresti ottenere il seguente output:

Asterisk 17.7.0, Copyright (C) 1999 - 2018, Digium, Inc. and others.
Created by Mark Spencer <>
Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details.
This is free software, with components licensed under the GNU General Public
License version 2 and other licenses; you are welcome to redistribute it under
certain conditions. Type 'core show license' for details.
=========================================================================
Running as user 'asterisk'
Running under group 'asterisk'
Connected to Asterisk 17.7.0 currently running on ubunt4 (pid = 47965)
ubunt4*CLI> 

Abilita la GUI dell'asterisco

Per accedere ad Asterisk dal browser Web, sarà necessario abilitare Asterisk GUI. Innanzitutto, modifica il file /etc/asterisk/http.conf:

nano /etc/asterisk/http.conf

Rimuovere il commento e modificare le seguenti righe:

enabled = yes
bindaddr = 0.0.0.0
bindport = 8088
prefix = asterisk
enable_static = yes
enablestatic = yes

redirect = / /static/config/index.html
uploads = /var/lib/asterisk/uploads/

Salva e chiudi il file, quindi modifica il file /etc/asterisk/manager.conf e imposta il tuo utente amministratore:

nano /etc/asterisk/manager.conf

Aggiungi/Modifica le seguenti righe:

enabled = yes
webenabled = yes

port = 5038
bindaddr = 0.0.0.0

[admin]
secret = admin1234
read = system,call,log,verbose,command,agent,user,config
write = system,call,log,verbose,command,agent,user,config,originate

Salva e chiudi il file quando hai finito.

Installa la GUI di Asterisk

Successivamente, scarica l'ultima versione della GUI di Asterisk con il seguente comando:

svn checkout http://svn.digium.com/svn/asterisk-gui/branches/2.0

Una volta scaricato, cambia la directory nella directory scaricata e configurala con il seguente comando:

cd 2.0/
./configure

Quindi, crea la GUI di Asterisk con il seguente comando:

make

Dovresti ottenere il seguente output:

 +------- Asterisk-GUI Build Complete -------+
 + Asterisk-GUI has successfully been built, +
 + and can be installed by running:          +
 +                                           +
 +               make install                +
 +-------------------------------------------+

Quindi, esegui il seguente comando per installarlo sul tuo sistema:

make install

Dovresti vedere il seguente output:

 +---- Asterisk GUI Installation Complete ---+
 +                                           +
 +    YOU MUST READ THE SECURITY DOCUMENT    +
 +                                           +
 + Asterisk-GUI has successfully been        +
 + installed.				     +
 +                                           +
 +-------------------------------------------+
 +                                           +
 +          BEFORE THE GUI WILL WORK         +
 +                                           +
 + Before the GUI will run, you must perform +
 + some modifications to the Asterisk        +
 + configuration files in accordance with    +
 + the README file.  When done, you can      +
 + check your changes by doing:              +
 +                                           +
 +               make checkconfig            +
 +                                           +
 +-------------------------------------------+

Infine, riavvia il servizio Asterisk per applicare le modifiche:

systemctl restart asterisk

Accedi alla GUI di Asterisk

Ora, apri il tuo browser web e accedi alla GUI di Asterisk usando l'URL http://your-server-ip:8088/asterisk/static/config/index.html. Verrai reindirizzato alla seguente pagina:

Fornisci il nome utente e la password dell'amministratore e fai clic sul pulsante Accedi. Dovresti vedere la dashboard della GUI di Asterisk nella pagina seguente:

Conclusione

Congratulazioni! hai installato correttamente Asterisk e Asterisk GUI sul server Ubuntu 20.04. Ora puoi connettere il tuo server a qualsiasi rete PSTN e iniziare a chiamare in modo assolutamente gratuito.