IPv6 Certification Badge for kiokoman

Introduzione

Mi è stato richiesto se esiste un sistema per risparmiare sul costo del centralino offerto da infostrada nell'ambito di un contratto voip con 15 linee, la scelta ricade su Asterisk quindi decido di gestire la cosa preparando una macchina dedicata con la distro di freepbx installata. L'installazione avviene come per qualsiasi altra distribuzione linux, freepbx è un frontend per asterisk e la distribuzione è basata su CentOs. Dopo un sopralluogo e una chiamata ai tecnici infostrada mi assicuro di avere vita facile, linea già attiva, modem/router huawei di infostrada già posizionato e funzionante, smartnode patton installato e già configurato. Meglio di così non poteva andare.

Prerequisiti

1 pc con installato la distribuzione di freepbx 14 e asterisk 13

 

Configurazione

 L'assistenza tecnica infostrada mi comunica quanto segue:

indirizzo ip del patton 192.168.1.1

indirizzo ip da assegnare al centralino 192.168.1.2

Numerazione GNR: 3901112345xx (xx = da 00 a 99)

Codec da abilitare: G729a, G711a  con ptime a 20 msec.

Per i toni DTMF: RFC2833 con Payload Type 96 o 101.

Per i FAX abilitare Passthrough  G711 con RE-INVITE oppure T38 con RE-INVITE

a fine installazione di freepbx sullo schermo troveremo indicazioni su come accedere alla GUI, qualcosa del tipo http://192.168.1.115 nel mio caso, quindi attraverso un altro pc in rete colleghiamoci al suddetto indirizzo e iniziamo la configurazione.

la prima cosa che ci viene richiesta è la creazione di un utente amministratore, procedete come meglio credete.

Nella fase successiva ci viene richiesto di attivare il server, fatelo, la registrazione è gratuita e vi permette di effettuare gli aggiornamenti tramite la GUI

Il resto sono proposte commerciali che possono essere tranquillamente tralasciate/ignorate

Il primo passaggio che eseguo è quello di assicurarmi che i moduli e il sistema siano aggiornati, durante l'aggiornamento però mi si è presentato un errore, si lamentava della mancanza del modulo "pm2", per ovviare a questo errore bisogna prima installare il modulo "process management"

cliccare su Admin -> Module Admin -> Process Management -> install

cliccare su Check online -> update all

 pbxupd

 

Una volta completato questo passaggio mi accingo a configurare il trunk infostrada, per poter proseguire rechiamoci in

Connectivity -> Trunks -> Add Trunk -> Add SIP (Chan_pjsip) trunk

I campi da compilare sono i seguenti:

Trunk Name: ci si mette un nome identificativo

Outbound CallerID: il numero di telefono in uscita, è un elemento fondamentale nel mio caso perchè infostrada autorizza le chiamate in uscita solamente se ci si presenta con il giusto numero assegnato. mi sono stati assegnate 15 linee in uscita, per il momento specifico il primo numero, compreso di prefisso internazionale 39, le restanti linee le potrò assegnare in seguito ai client

Maximum Channels: come già detto ho 15 linee quindi nel mio caso 15

pbxtrunk1

 

 pbxtrunk2

Nel tab Dialed Number Manipolation Rules ho generato con il wizzard i patterns

Nel Tab pjsip Settings ho disabilitato l'autenticazione in quanto non richiesta da infostrada Authentication -> None

pbxtrunk3

cliccare su Submit e in seguito su Apply Config in alto a destra

A questo punto dobbiamo creare le rotte per le chiamate in entrata e in uscita, cominciamo cliccando su Connectivity -> InBound Routes

Personalmente mi è stato richiesto e di conseguenza ho creato 15 rotte in ingresso, ognuna assegnata ad un numero di telefono e destinate ad uno specifico client, quindi alla fine mi ritroverò con 15 rotte e 15 client con relativo nome utente e password da assegnare al telefono voip.

Per poter ottenere questo risultato dovrò specificare su DID number un numero di telefono diverso da "ANY" quindi voglio che le chiamate ricevute sul numero 390111234500 vengano risposte dall'interno 200 e invece le chiamate ricevute sul numero 390111234501 vengano risposte dall'interno 201 e così via procederò come segue:

Description: in-linea1

DID Number: 390111234500

 Set Destination: extension -> add new pjsip extension -> User extension:200 OutBount CID: 390111234500 ( Outbound CID, voglio anche che questo interno quando chiama esca col numero 00 finale)

ripeto l'operazione per gli altri interni

Description: in-linea2

DID Number: 390111234501

 Set Destination: extension -> add new pjsip extension -> User extension:201 OutBount CID: 390111234501 ( Outbound CID, voglio anche che questo interno quando chiama esca col numero 01 finale)

.......

pbxinbound2

pbxinbound1

pbxinbound3

Non ci resta che creare la rotta per le chiamate in uscita tra l'altro col passaggio precedente abbiamo già assegnato agli interni anche il numero che devono utilizzare in uscita

clicchiamo su Connectivity -> OutBound Routes -> Add Outbound route

I campi da compilare sono:

Route name: out-linea1

Trunk Sequence for Matched Routes -> infostrada

e usiamo il wizard per generare i dial patterns

Clicchiamo su submit e non dimentichiamoci di fare Apply config in alto a destra.

pbxoutbound1

pbxoutbound2

A questo punto non basta fare altro che registrare i telefoni voip con nome utente e password generati precedentemente che potete recuperare/gestire andando su Admin -> User Management.

La distribuzione Freepbx integra Fail2ban quindi occhio che se dai terminali sbagliate nome utente e password troppe volte venite tagliati fuori

Un dovuto ringraziamento all'assistenza tecnica wind/infostrada