Newsgroup: it.tlc.telefonia.voip
Titolo: [miniguida] Asterisk box con OpenWRT

===============
== REQUISITI ==
===============
1. un router compatibile(*) con OpenWRT (
www.openwrt.org
)
2. una connessione ad Internet
3. un account con un fornitore di servizi VoIP per effettuare e 
(possibilmente) ricevere chiamate
(*): elenco dei router compatibili 
http://wiki.openwrt.org/TableOfHardware
==========================================
== INSTALLAZIONE DI OPENWRT ED ASTERISK ==
==========================================
Scaricare il firmware adatto al proprio router dall'indirizzo 
http://downloads.openwrt.org/whiterussian/rc5/bin/
(ad esempio per un Linksys WRT54GL va bene 
http://downloads.openwrt.org/whiterussian/rc5/bin/openwrt-wrt54g-jffs2.bin
)
Aprire la pagina di amministrazione del router (in genere e' 
http://192.168.1.1
) ed aggiornare il firmware usando il file appena 
scaricato.
Al termine della procedura e dopo aver fato riavviare il router 
cancellarne le impostazioni tenendo premuto per qualche secondo il 
pulsantino di reset (sul Linksys WRT54GL e' vicino alla prima porta 
Ethernet partendo da destra)
Aprire nuovamente la pagina di amministrazione del router: la prima 
volta verra' chiesto di immettere una nuova password...
Configurare il router con le vecchie impostazioni affinche' ci sia 
connettivita' locale e verso Internet.
Cliccare sulla categoria "Sistema" (da dove e' possibile installare e 
rimuovere i pacchetti nel router), scegliere "Aggiorna la lista dei 
pacchetti" ed attendere qualche secondo affinche' venga aggiornato 
l'elenco dei pacchetti installabili sul router.
Dall'elenco dei pacchetti disponibili cliccare su "Installa" relativo al 
pacchetto "asterisk": il router scarichera' il pacchetto e lo 
installera' nel giro di pochi secondi.
Al termine dell'installazione "asterisk" figurera' tra i pacchetti 
installati.
All'indirizzo 
http://forum.openwrt.org/viewtopic.php?id=5534
 e' stato 
pubblicato uno script per la gestione di Asterisk da usare con OpenWRT.
Per caricare lo script su OpenWRT e' necessario accedere al router via 
SSH: un client free da usare 
http://www.chiark.greenend.org.uk/~sgtatham/putty/
Dopo aver effettuato il login via SSH spostarsi su /www/cgi-bin/webif, 
caricare lo script (per i piu' pigri "wget 
http://www.skyphone.it/openwrt/asterisk.sh
") e cambiare i permessi del 
file con "chmod 775 asterisk.sh".
E' possibile verificare la corretta installazione dello script 
attraverso il browser cliccando sulla categoria "Stato": dovrebbero 
essere presenti 4 sottocategorie di cui l'ultima e' Asterisk.
Ultimo passo: modificare (sempre via SSH) nel file /etc/init.d/asterisk 
la riga con ENABLE_ASTERISK affinche' abbia valore "yes" altrimenti 
asterisk non viene avviato automaticamente all'accensione del router.
Al termine delle modifiche chiudere la sessione SSH e riavviare il 
router ;)
=================
== IL FIREWALL ==
=================
Dalla pagina di amministrazione del router aprire la categoria 
"Rete"->"Firewall"
Aggiungere 2 regole:
- "Accetta": porta di destinazione 5060
- "Accetta": porte di destinazione 8000-8010
e cliccare su "Applica i cambiamenti"
== CONFIGURAZIONE DI ASTERISK ==
Supponiamo di aver gia' registrato un account presso un provider VoIP 
che per semplicita' chiamero' "FuffaTel".
I parametri per chiamare e ricevere chiamare con FuffaTel sono:
- server SIP: 
sip.fuffatel.it
- porta: 5060
- login: 0612345678
- password: fuffapass
Supponiamo inoltre che l'indirizzo IP assegnato al modem sia 
<indirizzoIP>
Dalla pagina di gestione di Asterisk (Stato->Asterisk) cliccare su 
".conf Editor" e modificare i file sip.conf ed extensions.conf come 
segue:
; ============================= sip.conf ===============================
[general]
context=default
realm=
sip.fuffatel.it
port=5060
bindaddr=0.0.0.0
;srvlookup=yes
defaultexpirey=100
useragent=Asterisk
externip=<indirizzoIP>
localnet=
192.168.1.1/255.255.255.0
disallow=all
;allow=g729
allow=alaw
allow=ulaw
allow=gsm
register => 
0612345678:fuff...@sip.fuffatel.it/998
[utentelocale]
type=friend
username=utentelocale
secret=passwordlocale
callerid="Utente" <utentelocale>
host=dynamic
dtmfmode=rfc2833
;canreinvite=no
context=default
nat=yes
[fuffatel-out]
type=friend
username=0612345678
secret=fuffapass
fromuser=0612345678
fromdomain=
sip.fuffatel.it
host=
sip.fuffatel.it
canreinvite=no
insecure=very
nat=yes
; ============================= extensions.conf 
===============================
[default]
exten => 998,1,Ringing
exten => 998,2,Dial(SIP/localuser)
exten => 998,3,Hangup
exten => _01.,1,Dial(SIP/${EXTEN:2}@fuffatel-out)
; ============================= fine ===============================
; ============================= fine ===============================
; ============================= fine ===============================
Dopo aver salvato le modifiche cliccare su "Reload" (sempre all'interno 
della pagina di gestione di Asterisk) ed attendere qualche secondo.
Subito dopo cliccare su SIP/Registry: se non ci sono problemi dovrebbe 
comparire l'elenco dei provider registrati ;)
====================================
== SPIEGAZIONE DI extensions.conf ==
====================================
Le righe significative sono:
- "exten => 998...": inoltra le chiamate ricevute sull'estensione 998 
(legata attraverso sip.conf al numero 0612345678 di FuffaTel) 
all'account definito in "utentelocale" (che puo' essere un client 
software tipo X-Lite o un hardware come il PAP2)
- "exten => _01...": inoltra le chiamate che iniziano con "01" 
attraverso l'account definito in "fuffatel-out" rimuovendo i primi due 
caratteri (lo "01")
=====================================
== CONFIGURAZIONE DI UN CLIENT SIP ==
=====================================
I parametri da usare per configurare un qualsiasi client SIP (software o 
hardware) sono:
- nome: utentelocale
- user ID: utentelocale
- password: passwordlocale
- proxy SIP: 192.168.1.1 (indirizzo IP del router)
Un possibile dialplan da usare sul PAP2: (<:01>xx.)
Ciao!
Simone.
-- 
Ora diche una poesia:"Se fossi fuoco...bruciavo,se fossi 
acqua...bagnavo,se fossi saponetta...insaponavo,se fossi acqua n'altra 
volta...risciacquavo..."
(C.Guzzanti - Ottavo nano) 

Supponiamo inoltre che l'indirizzo IP assegnato al modem sia <indirizzoIP>
<indirizzo IP> assegnato al modem intendi l'IP assegnato dal provider 
(alice, tiscali, ecc...) al momento della connessione a internet ? Se cosi 
fosse avendo l'indirizzo dinamico dovrei riconfigurare ogni volta che spengo 
il router ?

 volta che spengo il router ?
Si
Oppure puoi sottoscrivere 
dyndns.org
 (o simili) ed inserirlo nella 
configurazione del modem ADSL o del router con OpenWRT.
In tal modo sostituisci <indirizzoIP> con 
filippo.dyndns.org
 ;)
Su 
http://wiki.openwrt.org/PublishYourWANIp
 trovi un modo per farlo con 
OpenWRT
Ciao!
Simone.
-- 
*Rachel*: [on the phone with her dad] "Well, maybe it's my decision. 
Well, maybe I don't need your money. Wait. I said maybe"
(J.Aniston - Friends) 

 OpenWRT
Molto bene, adesso cerco di procurarmi un router per fare 
esperimenti.....ciao 


Mi sono dimenticato di chiederti se è possibile mettere piu di un provider 
Voip e se in base al numero che facciamo si puo instradare al provider che 
si ritiene piu conveniente.
Analogamente se è possibile avere piu numeri geografici per la ricezione 
delle chiamate. 

 provider Voip
[cut]
Si, sia in ingresso che in uscita :)
Per *ogni* account bisogna aggiungere in sip.conf:
    register => 
userid:pass...@sip.fuffatel.it/estensione
    [provider-out]
    type=friend
    username=userid
    secret=password
    fromuser=userid
    fromdomain=
sip.fuffatel.it
    host=
sip.fuffatel.it
    canreinvite=no
    insecure=very
    nat=yes
ed in extensions.conf:
    exten => estensione,1,Ringing
    exten => estensione,2,Dial(SIP/localuser)
    exten => estensione,3,Hangup
Sempre in extensions.conf e' possibile scegliere quale provider usare in 
base alla destinazione, tipo:
    exten => _33.,1,Dial(SIP/${EXTEN:2}@cellulartel-out)
    exten => _06.,1,Dial(SIP/${EXTEN:2}@urbanetel-out)
dove cellulartel-out e urbanetel-out sono altri 2 provider definiti nei 
rispettivi contesti in sip.conf.


DrFalken ha scritto:
scusa se mi intrometto con una domanda piuttosto stupida ma girovagando 
per i ng e internet non ho trovato un risposta esauriente all'amletico 
quesito: a che serve openwrt?
sai dirmi in termini pratici quali vantaggi comporta cambiare firmware 
al router e se nel caso di telefonia voip ci sono vantaggi ulteriori?
grazie

 grazie
Ciao!
Simone.
-- 
*Ross* : "Apparecchio per scaldare".
*Phoebe* : "Radiatore".
*Ross* : "5 lettere".
*Phoebe*: "Rdatr".
(D.Schwimmer, L.Kudrow - Friends) 

 ;)
Ciao, ottima guida, mi sto cimentando nell'installazione... ma ho difficolta 
ad editare il file... che comando uso? "nano" non funziona...
... scusa la domanda ;.)
Ciao ciao e grazie 

 sottocategorie di cui l'ultima e' Asterisk.
il comando chmod 755 asterisk.sh non esordisce nessun risultato... è ok?
nel browser, stato -> asterisk c'è ma cliccando "impossibile trovare la 
pagina..."
dove sbaglio?
Buonanotte a tutti ;-) 

 Ciao ciao e grazie
Ciao!
Simone.
-- 
Se fossi gatto..MIAO...se fossi cane BAU...se fosse tardi...CIAO
(C.Guzzanti - Ottavo nano) 

 Buonanotte a tutti ;-)
Ciao!
Simone.
-- 
Ora diche una poesia:Se fossi cane bau,se fossi gatto miao,se fossi 
tardi ciao.
(C.Guzzanti - Ottavo nano) 

 Simone.
Grazie della dritta... tutto ok, ora è a posto, provo di configurarlo...
è eccezionale avere la propria versione di asterisk sul router ;-)
Ciao e grazie by Elia 

innanzitutto voglio ringraziarti per la guida, grazie alla quale sono
riuscito ad installare senza problemi OpenWRT ed Asterisk sul mio
WRT54GL. Sembra tutto ok, ma asterisk non mi parte! Hai qualche
suggerimento?
DrFalken ha scritto:


 suggerimento?
Hai modificato /etc/init.d/asterisk alla riga ENABLE_ASTERISK ?
In caso affermativo riavviando il router viene caricato anche 
Asterisk...
Ciao!
Simone.
-- 
*Monica*: "Chandler. You're smoking again?"
*Chandler*: "Well, yesterday I was smoking again, and today... I'm 
smoking still..."
(M.Perry, C.Cox - Friends) 

/dev/null 2>&1
  ;;
 *)
  echo "usage: $0 (start|stop)"
  exit 1
esac
exit $?
===============================
/etc/init.d/asterisk END
================================
DrFalken ha scritto:


Risolot.
Nel mio sistema la riga
ENALE_DEFAULT="no"
si trovava nel file
etc/default/asterisk
e non in /etc/init.d/asterisk
L'ho modificata e adesso asterisk parte regolarmente.
Adesso provo a configurarlo.
Ciao

Finalmente sono riuscito a configurare la mia asterisk box per fare
chiamate: tutto OK.
Solo che non riesco a ricevere!!!
Se ho capito bene, le parti siginifcative dei miei file di confirazione
dovrebbero essere le seguenti:
======================
sip.conf
========================
register => 
yyyyyyy:xxx...@voipcheap.com/998
[achille]
type=friend
username=achille
secret=achille
callerid="Utente" <achille>
host=dynamic
dtmfmode=rfc2833
;canreinvite=no
context=default
nat=no
========================
=====================
extension.conf
======================
exten => 998,1,Ringing
exten => 998,2,Dial(SIP/achille)
exten => 998,3,Hangup
Sai dirmi cosa c'è che non va nella mia configurazione?
DrFalken ha scritto:


 nat=no
Sembra ok tranne "nat=no" che dovresti cambiare con "nat=yes".
Inizialmente ho avuto anche io problemi a ricevere chiamate ma 
impostando "nat=yes" ed aprendo le porte 5060 e 8000-8010 sul router non 
ho piu' avuto problemi.
Ciao!
Simone.
-- 
*Rachel*: "You caught me. I'm a laundry virgin"
*Ross* : "Then I'll use the gentle cycle"
(J.Aniston , D.Schwimmer- Friends) 

 Simone.
Ok, un pň di dubbi...
... non mi registra nessun numero, dice: "Request Send"
La mia rete č cosě composta: Router ADSL US-Robotics 9105 - Sipura SPA2100 - 
WRT54GS della FON - PC
Ho il servizio di NO-IP sul Router ADSL.
Il Router ADSL ha indirizzo 192.168.0.1, il WRT lato LAN ha indirizzo 
192.168.0.3, il Sipura lato LAN ha l'indirizzo 192.168.0.2, il mio PC 
192.168.0.4
Il Sipura lato WAN ha indirizzo 192.168.1.2 ma non lo utilizzo, il WRT lato 
WAN ha indirizzo 192.168.1.1
Ora ho il Sipura e il WRT collegati al Router ADSL e il PC collegato al WRT 
(se lo collego al Router ADSL non riesco ad accederci dal PC).
Sul router ADSL ho rediretto le porte 5060-5070 e 8000-20000 sull'indirizzo 
192.168.0.3 (WRT/LAN)
In SIP.CONF ho impostato:
nat=yes
externip=
mioDNS.no-ip.com
localnet=
192.168.0.0/255.255.255.0
localnet=
192.168.1.0/255.255.255.0
Dove sbaglio? 

 La mia rete è così composta: Router ADSL US-Robotics 9105 - Sipura SPA2100 -


Dopo un paio di giorni di battaglia, ho appena completato
l'installazione di Asterisk e OpenWRT su un D-Link DSL-504T.
Funziona tutto perfettamente.
Il D-Link 504T è un router con modem ADSL  integrato, basato sul
procesore TI AR7; ha uno switch a 4 porte integrato, ed un costo
ridotto.
Lo preferisco rispetto al Linksys WRT54g/GL/GS perchè, a differenza di
quest'ultimo, non necessita di un modem ADSL esterno; inoltre costa un
po' meno.
Connettendosi direttamente alla ADSL, il D-Link fa un hop in meno
rispetto al Linksys, il che potrebbe rivelarsi utile ai fini della
qualità; inoltre non avere un modem esterno signifca due aggeggi in
meno (il modem e il relatio alimentatore!!!), e un ulteriore costo in
meno (il modem).
Le prestazioni del porting AR7 sono esattamnte ideniche alla versione
per Linksys; punti a sfavore sono
1. manca (per ora) la comoda interfacia WebIF, per cui il router va
getioto in Telnet/SSH;
2. l'installazione è un po' più comlicata.
Il D-Link infatti non accetta i firmware non originali mediante un
codice checksum; per sostituire il firmware dunque bisogna operare
direttamente al livello del bootloader; niente di trascendentale,
comunque.
Altro vantaggio è che la versione di ASterisk pacchettizzata per il
porting AR7 è più aggiornata di quella per OpenWRT ufficiale (1.2.1.1
contro 1.0.10)

po' meno.
Secondo me è meglio il linksys perchè nel caso in cui si passasse a adsl 3 
con il d-link non sfrutteresti piu la velocita max della linea. Con linksys 
invece stai dietro il modem che ti pare.
Comunque dove posso vedere la procedura per la modifica del d-link ?

Certo, ci sono pro e contro, come in tutte le altre cose della vita :-)
Per la procedura di installazione puoi partire da qui:
http://wiki.openwrt.org/OpenWrtDocs/InstallingAR7
tieni presente che si tratta di un work in progress, e che in alcuni
casi devi fare qualche "deviazione" dalla procedura.
Se hai bisogno, cmq, chiedi pure: sarò felice diaiutarti.
Ciao
Filippo ha scritto:


Curiosità.. ho visto che tra il software incluso nella categoria "TI
AR7" c'è anche lo Zyxel 660HW-61, anche se è indicato come Untested.
Nessuno di voi ha mai tentato l'installazione su questo router??


Ho anche io il Router WRT54GL, ed una connessione a fastweb, ho preso
questo router per poter usare il portatile in wifi ed usufruire le 4
porte lan per lo scambio di file tra computer a velocità superiore ai
10mbit. limite dell'hag di Fastweb.
Ho letto però la guida di Frank ed ho intuito che installando un altro
firmware posso usare il router come centralino per chiamate voip.
Ho alcune domande molto nubbie da porre:
1) che tipo di tel posso collegare una volta installato il firmware ?
tel wifi ? tel con presa RJ45 ? dove ci comprano ? bisogna stipulare
qualche abbonamento particolare ?
2) una volta installato questo firmware il router WRT54GL perde le sue
principali funzioni ?

Puoi utilizzare telefoni VoIP, ovvero:
1. Telefoni VoIP con attacco ethernet;
2. telefoni analogici "normli" tramite una adattatore ATA
3. soft-phone per Pc (tipo X-Lite)
4. telefoni USB che si interfacciano ai soft-phone di cui sopra
Il router non perde le sue caratteristiche, e puoi conituare ad
utilizzarlo come router e come access point.
Sappi però che con l'installazione di un firmware non originale,
però, perdi la garanzia del costruttore.
ciao
marioteg...@yahoo.it
 ha scritto:


1 quanto costano dove si trovano ?
2 come sopra !
3 e 4 mi piace l'idea di chiamare con un tel interfacciato al wrt54gl
:P quindi vorrei tenere il pc spento .
Achille ha scritto:


Diciamo che ti consiglio l'adattatore, ma prima però prova con il
soft-phone, che è gratuito.
Dopo se ti piace come va, ti prendi un adattatore.
I prezzi variano a seconda delle caratteristiche: se googli un po' di
messaggi trovi citati i più diffusi, poi su eBay ti rendo conto dei
prezzi.
Ciao
mario...@yahoo.it
 ha scritto:


si può collegare direttamente un telefono al router linksys wrt54gl
con firmware moddato ?

Un telefono IP/Ethernet si.
Un telefono normle, tramite adatttore.
mario...@yahoo.it
 ha scritto:


Achille ha scritto:

Per il Linksys WRT54GL ci vuole qualche modello particolare o va bene
tutti ?

Dai un occhio qui:
http://wiki.openwrt.org/TableOfHardware?action=show&redirect=toh#head-6b2369a6aabba3642915213936b680fdedcffe0d
in teoria tu con il WRT54GL dovresti andare bene, entrambe le versioni
lì riportate sono supportate... se vedi invece il WRT54G fa molta
differenza la versione!
mario...@yahoo.it
 ha scritto:


Federico ha scritto:

come adattatore avevo pensato al Grandstream HandyTone 286 oppure il
486 che ne pensate ?

DrFalken Achille e gli altri avete mai provato il Grandstream HandyTone
286/486 sul WRT54GL ? Vi funziona ?

Io ho provato l'HT-286 e l'HT-386: tutto ok.
mario...@yahoo.it
 ha scritto:


Achille ha scritto:

in ogni caso meglio prenderlo senza router giusto ? altrimenti il
WRT54GL che ce sta a fa ? :)

Alla fine ho optato per il Fritz! staremo a vedere grazie a tutti per
ora !

All'indirizzo 
http://forum.openwrt.org/viewtopic.php?id=5534
 e' stato
pubblicato uno script per la gestione di Asterisk da usare con OpenWRT.
Per caricare lo script su OpenWRT e' necessario accedere al router via
SSH: un client free da usare
http://www.chiark.greenend.org.uk/~sgtatham/putty/
Dopo aver effettuato il login via SSH spostarsi su /www/cgi-bin/webif,
Non riesco a fare il Login, ho scaricato putty.exe ma pur mettendo la
password in maniera corretta mi dice acces denied :(

 password in maniera corretta mi dice acces denied :(
Hai mai impostato la password via telnet su quel router?
Con OpenWRT, proprio per sottolineare l'insicurezza della cosa, è
disponibile soltanto telnet finché non viene impostata una password
(comando "passwd").
Una volta impostata, telnet si disabilita e diventa disponibile ssh.
Andrea.
-- 
Homepage: 
http://andrea.borgia.bo.it
     /    Amateur radio: IZ4FHT

Cosa vuol dire impostare la password via telnet ? :P io ho impostato
una nuova password così: explorer--> 192.168.1.1 --->
system--->password change da
lì ho cambiato password, adesso quando eseguo putty.exe mi chiede
Login AS: lo
metto e vado avanti,
poi mi chiede la password e mi da access denied :(
ho provato pure a cambiare la password a resettare il router ma nulla
:(

 poi mi chiede la password e mi da access denied :(
Mi sa che l'interfaccia web e la CLI abbiano due password diverse e da
web non puoi fare quello che dicono loro. Per la cronaca, lo script di
gestione asterisk ce l'ho e ti dirņ che fa giusto un po' di scena, non
mi sembra realmente utile.


Sono riuscito a caricare lo script EVVAI ! compare anche attraverso il
browser cliccando sulla categoria "Stato" non ho capito due cose:
1) cambiare i permessi del file con "chmod 775 asterisk.sh".
2) modificare (sempre via SSH) nel file /etc/init.d/asterisk
la riga con ENABLE_ASTERISK affinche' abbia valore "yes" altrimenti
asterisk non viene avviato automaticamente all'accensione del router.

 asterisk non viene avviato automaticamente all'accensione del router.
Eh, ti tocca usare "vi" che indubbiamente non è tra gli editor più
intuitivi che ci siano in giro.
vi /etc/init.d/asterisk
i
vai a cambiare "no" in "yes"
esc
:
wq
invio
Se hai modo di usare un sistema Linux, puoi fare pratica con "vi".


Andrea Borgia ha scritto:

FATTO TUTTO THX adesso aspetto solo il Fritz!fon box ata dalla Germania
:)
mi serve questo asterisk caricato sul router perchè vorrei usarlo a
computer spento.

 Funziona thx !
Se posso permettermi, un consiglio: un sistema embedded è una bestiola
un po' particolare rispetto ad un normale desktop e non guasterebbe una
maggiore dimestichezza con il sistema operativo usato, perché lì tutto è
tirato all'estremo.
Buon divertimento,


Ancora non è arrivato l'amico fritz e intanto mi alleno, come posso
fare della pratica ?
Andrea Borgia ha scritto:


 fare della pratica ?
La strada piů rapida č quella di procurarsi un live cd (che consente di
usare Linux senza doverlo installare, almeno inizialmente).
http://mirror.lugroma.org/ubuntu-releases/kubuntu/6.06.1/kubuntu-6.06.1-desktop-i386.iso
Ormai siamo decisamente OT, nel caso avessi bisogno di altro aiuto ti
consiglio di spostarti in un gruppo tipo it.comp.os.linux.iniziare e
chiedere lě.
