Come installare Asterisk per la tua prima soluzione PBX
Che cos’è Asterisk
Asterisk è un centralino software (PBX) open source che gestisce chiamate VoIP e I/O telephony. Definizione in una riga: un motore che collega telefoni SIP, trunk VoIP e logiche di chiamata (dialplan).
Panoramica rapida dei passi
- Verificare requisiti kernel e header per la compilazione.
- Installare dipendenze (gcc, librerie, header MySQL per gli addon).
- Scaricare ed estrarre i sorgenti (Zaptel, libpri, Asterisk, suoni, addons).
- Compilare e installare seguendo l’ordine indicato.
- Configurare sip.conf ed extension.conf per estensioni e trunk.
- Testare registrazione SIP, chiamate interne e chiamate in uscita/ingresso.
Requisiti di sistema
- Kernel Linux con header corrispondenti installati (necessari per compilare moduli).
- Compilatore C (gcc) e strumenti build (make, autoconf se richiesto).
- Librerie di supporto: termcap, OpenSSL e altre librerie runtime.
- Per gli asterisk-addons: header e librerie MySQL (libmysqlclient-dev / mysql-devel).
- IP pubblico o modalità NAT/PAT correttamente configurata se si prevedono trunk esterni.
Important: codec come g.729 possono richiedere licenze; verifica i requisiti di licenza del codec scelto.
Download dei file (elenco)
- Zaptel
- libpri
- Asterisk
- asterisk-sounds
- asterisk-addons
Copia tutti i file sorgente sul server, ad esempio in /usr/src/.
Installazione passo-passo
Nello scenario di esempio i sorgenti sono in /usr/src/. I comandi forniti sono gli stessi da eseguire nella shell come root o tramite sudo.
31 passi per installare Asterisk (esegui nell’ordine):
- tar -xzf zaptel-1.4.12.1.tar.gz
- tar -xzf libpri-1.4.9.tar.gz
- tar -xzf asterisk-1.4.20.tar.gz
- tar -xzf asterisk-sounds-1.2.1.tar.gz
- tar -xzf asterisk-addons-1.4.7.tar.gz
- cd zaptel-1.4.12.1
- ./configure
- make
- make install
- make config
- service zaptel start
- cd ..
- cd libpri-1.4.9
- make
- make install
- cd ..
- cd asterisk-1.4.20
- ./configure
- make
- make install
- make samples
- make config
- cd ..
- cd asterisk-sounds
- make install
- cd ..
- cd asterisk-addons-1.4.7
- ./configure
- make
- make install
- service asterisk start
Se tutti i comandi terminano con successo, Asterisk sarà installato e il servizio avviato.
Note: i numeri di versione nell’esempio sono storici. In ambienti di produzione valuta versioni attive e supportate e usa pacchetti della tua distribuzione quando possibile.
Creare le prime estensioni SIP
Aggiungi le seguenti righe in /etc/asterisk/sip.conf. Il blocco di esempio crea una template comune e 5 estensioni.
[common](!) ; this is template.
type=friend
context=internal
host=dynamic
disallow=all
allow=ulaw
allow=alaw
allow=g723
allow=g729
dtmfmode=rfc2833
[1000](common)
username=1000
secret=1000
[1001](common)
username=1001
secret=1001
[1002](common)
username=1002
secret=1002
[1003](common)
username=1003
secret=1003
[1004](common)
username=1004
secret=1004
Spiegazione breve: il template [common] definisce opzioni condivise; ogni blocco [1000], [1001], … eredita il template e imposta username/secret.
Se i telefoni SIP non si registrano, verifica le impostazioni del firewall e del NAT. Durante la fase di setup è consigliabile disabilitare temporaneamente regole restrittive del firewall per isolare problemi di registrazione.
Creare un dialplan semplice
Modifica /etc/asterisk/extensions.conf e aggiungi il seguente contesto per chiamate interne:
[internal]
exten=> _XXXX,1,Dial(SIP/${EXTEN})
Questa regola instrada qualsiasi numero a 4 cifre alla corrispondente estensione SIP registrata.
Aggiungere un trunk SIP verso un provider
Per fare chiamate in uscita e ricevere chiamate esterne hai bisogno di un trunk (provider) e generalmente di un indirizzo IP pubblico o di una corretta configurazione NAT.
Aggiungi questo blocco a /etc/asterisk/sip.conf:
[trunk]
type=friend
context=internal
host=
disallow=all
allow=ulaw
allow=alaw
allow=g723
allow=g729
dtmfmode=rfc2833
Poi aggiungi alla fine di /etc/asterisk/extensions.conf la regola per chiamate in uscita (sostituisci trunk1 con il nome reale del trunk se diverso):
exten => _XXXXXXX.,1,Dial(SIP/trunk1/${EXTEN})
Esempio finale di extension.conf:
[internal]
exten=> _XXXX,1,Dial(SIP/${EXTEN})
exten => _XXXXXXX.,1,Dial(SIP/trunk1/${EXTEN})
Questo instrada le chiamate con almeno 7 cifre al trunk esterno.
Checklist pre-deploy (ruoli principali)
Installer:
- Verificare header kernel e dipendenze.
- Compilare moduli e avviare servizi.
- Posizionare file di configurazione in /etc/asterisk/.
Amministratore di rete:
- Assegnare IP/statico o impostare NAT/PAT.
- Aprire porte UDP 5060 e range RTP nel firewall (solo se necessario).
- Monitorare banda e jitter.
Helpdesk / Operatore:
- Confermare registrazione degli endpoint SIP.
- Testare chiamate interne e in uscita.
- Documentare credenziali e numerazione.
Test di accettazione minimo
- Un client SIP si registra con successo a un’estensione (es. 1000).
- Due estensioni interne si chiamano reciprocamente con audio percepibile.
- Chiamata in uscita verso PSTN/numero esterno passa tramite il trunk.
- Chiamata in ingresso dal provider raggiunge un’estensione interna.
- Registri Asterisk mostrano le transazioni SIP (sip show channels, sip show peers).
Criteri di accettazione: tutti i test sopra devono passare senza perdita di pacchetti significativa e con latenza accettabile per la rete.
Risoluzione problemi comuni
- Problema: estensione non si registra. Controlli: credenziali, NAT, porte UDP 5060, log (/var/log/asterisk/messages).
- Problema: audio unidirezionale. Controlli: RTP range bloccato dal firewall, NAT non correttamente configurato, symmetric NAT.
- Problema: chiamate in uscita non instradate. Controlli: host del trunk, autenticazione, dialplan e prefissi.
Suggerimento operativo: usa i comandi CLI di Asterisk per debug in tempo reale: core set verbose, sip set debug on, rtp debug (se disponibile). Non lasciare debug attivo in produzione per tempi lunghi.
Sicurezza e privacy (raccomandazioni)
- Cambia le password predefinite per le estensioni e usa segreti complessi.
- Limita l’accesso amministrativo (manager.conf) per indirizzo IP.
- Se registri chiamate, valuta cifratura dei file e politiche di conservazione per conformità GDPR.
- Usa TLS/SRTP se i dispositivi e il provider lo supportano per cifrare segnalazione e media.
Nota: la protezione del PBX è critica; un PBX non protetto può essere usato per frodi telefoniche.
Mini-metodologia per passare in produzione
- Pianifica: topologia, numero di estensioni, trunk e codec.
- Testa in laboratorio: installazione, chiamate, failover.
- Hardening: firewall, accessi, backup configurazioni.
- Monitoraggio: logging, metriche di qualità voce (jitter, packet loss).
- Rollout graduale: migra gruppi di utenti e verifica esperienza.
Esempi di quando questa procedura non è sufficiente
- Se il tuo provider richiede autenticazione complessa o peggioramenti specifici (registrazioni multiple, outbounds con authentication username/password), sono necessarie configurazioni addizionali nel sip.conf.
- Per scenari con centralini digitali PSTN collegati tramite schede fisiche, servono driver e configurazioni Zaptel/DAHDI specifiche (non trattate in dettaglio qui).
Domande frequenti
Come disabilitare il debug quando finisco il test?
In CLI di Asterisk: sip set debug off e core set verbose 0.
Devo usare esattamente le versioni indicate nei comandi?
No, le versioni nell’esempio sono illustrative. Usa versioni supportate dalla tua distribuzione e patch di sicurezza aggiornate.
Dove inviare richieste di supporto?
Per domande generali contatta il team indicato nella documentazione interna o il fornitore del servizio. Per questo articolo: Gventure.
Riepilogo
- Questo articolo ti guida dall’installazione alla creazione di estensioni, dialplan e trunk.
- Esegui i test di accettazione e applica le raccomandazioni di sicurezza prima del go-live.
- Mantieni aggiornati i pacchetti e monitora la qualità della voce.
Summary:
- Verifica prerequisiti prima di compilare.
- Segui l’ordine di compilazione per evitare errori di dipendenze.
- Testa registrazioni, chiamate interne e trunk in uscita/ingresso.
Important: conserva backup delle configurazioni (/etc/asterisk/) e pianifica rollback nel caso di aggiornamenti critici.
Materiali simili

Recuperare dati Android senza root — Guida completa

Scaricare e installare Call of Duty Mobile su Android

Bloccare aggiornamenti Microsoft Store

Gestire la cronologia di YouTube: visualizzare, eliminare, pausa
Installare Asterisk: guida per il primo PBX
