HowTo Italiano

=Sblocchiamo La Fonera Plus= Questo HowTo è stato scritto originariamente da Giorgio Zarrelli.

Editato e perfezionato by Dema.

La procedura di sbloccaggio è frutto dell'eccellente lavoro di Lama Bleu.

Questo how-to è rilasciato sotto licenza GPL

= Ubuntu Linux howto=

In questo howto, spiegheremo passo per passo tutte le procedure necessarie per ottenere un accesso in shell remota usando Ubuntu Linux. Potete ovviamente usare una qualsiasi altra distribuzione linux, ma qui non tratteremo per esmpio di come installare il demone tftp o azioni da sudoers. Dopo tutto, se non hai scelto la distribuzione linux per esseri umani , vuol dire che sei un nerd e le istruzioni passo passo forse anche ti annoiano un po :)

Di cosa abbiamo bisogno

 * 1) un computer con  Ubuntu Linux
 * 2) un cavo di rete ethernet

Configurazione lato server
Per prima cosa dobbiamo installare il demone tftp nel nostro Ubuntu server

Dal momento che tftp è lanciato dal superdemone inetd, potremmo aver bisogno di aggiungere all' /etc/inetd.conf queste linee qui sotto

Ora dobbiamo configurare la directory dove depositare il file di immagine da flashare sulla fonera plus

Posizioniamoci nella directory dove scaricheremo l'immagine:

Aspettiamo un po il file è di 6.5 Mb.

Facciamo partire il demone tftp con il seguente comando :

Configurazione lato client
Prendiamo un cavo di rete ed inseriamo un'estremità nella porta ethernet della fonera (presa di colore nero) e l'altra alla porta ethernet del vostro PC

Diamo un nuovo indirizzo IP al vostro computer :

E ora creiamo un piccolo script. Manderà pacchetti arp attraverso la rete, aspettando risposta da 192.168.1.1 (l'indirizzo IP della Fonera+). non appena riceverà risposta, lo script lancerà una sessione telnet verso l'host scelto e invierà un segnale CTRL C. Viene invocato anche nc prima della sessione vera e propria di telnet, per essere più sicuri che il nostro CTRL C venga accettato e per ottenere quindi il prompt di redboot

Creiamolo quindi questo script.

E rendiamolo eseguibile:

Accesso al prompt di redboot sulla Fonera plus
A questo punto, scolleghiamo l'alimentazione della Fonera+ ed eseguiamo lo script creato sopra.

Inseriamo la nostra password di Ubuntu quando richiesto e ricolleghiamo il cavo di alimentazione della Fonera+. Il nostro amato piccolo routerino bianco e arancione effettuerà il boot e aspetterà due secondi per ricevere il segnale di CTRL C. Ecco cosa dovremmo vedere apparire a terminale:

Attenzione, appena vedete questa stringa :

RedBoot> ?? Premete CTRL C per ottenere il prompt di redboot

RedBoot>

Alcuni controlli prima di procedere alla scrittura in memoria
Controlliamo se gli indirizzi di memoria della vostra Fonera+ sono compatibili con i valori qui sotto (si puo' fare danso il comando "fis list" :

RedBoot> fis list Name             FLASH addr  Mem addr    Length      Entry point RedBoot          0xA8000000  0x80040400  0x00030000  0xA8000000 loader           0xA8030000  0x80100000  0x00010000  0x80100000 image            0xA8040000  0x80040400  0x00230004  0x80040400 image2           0xA8660000  0xA8660000  0x00140000  0x80040400 FIS directory    0xA87E0000  0xA87E0000  0x0000F000  0x00000000 RedBoot config   0xA87EF000  0xA87EF000  0x00001000  0x00000000

Controlliamo con cura i valori sopra, dovremmo ottenere esatamente gli stessi per procedere al flashaggio.

Ora facciamo degli altri controlli sugli indirizzi di memoria

RedBoot> x -b 0xa8040000 -l 32 A8040000: 00 21 BF DE A2 14 D3 9B 00 0A 50 34 6D 00 00 80  |.!........P4m...| A8040010: 00 FF FF FF FF FF FF FF FF 00 04 02 48 80 0E 0F  |............H...|

E ancora un altro

RedBoot> x -b 0xa8250000 -l 32 A8250000: 1E 5E B5 70 5D FA DE 16 AE 98 85 61 87 D5 E2 09  |.^.p]......a....| A8250010: D2 C1 70 A0 DD F6 2A 30 7F C8 5E 0B 00 DF 50 0A  |..p...*0..^...P.| I volori devono essere esattamente come evidenziato sopra. Se tutto combacia, siete pronti per il flashaggio vero e proprio

Trasferiamo il file immagine nella memoria della Fonera+
E' giunto il momento di trasferire tramite tftp il file immagine.bin dal vostro computer alla fonera

RedBoot> load -r -b 0x80100000 image.bin Using default protocol (TFTP) Raw file loaded 0x80100000-0x8070ffff, assumed entry at 0x80100000

Flashaggio
Siamo ad un punto critico, riprogrammare la FLASH memory

Rispondiamo "y" quando viene chiesto di continuare a falshare la memoria

Reset
Ci siamo quasi. L'ultimo comando da dare è un reset, per procedere a un nuovo boot ed accedere alla fonera+ finalmente liberata

RedBoot> reset

Accesso in shell remota
Non appena la Fonera+ avrà affettuato i lreboot, connettetevi alla rete wireless privata (My_Place) e usiamo il comando ssh per entrare

Potete stappare le bottiglie, la vostra fonera è aperta. !

=Windows howto=

Howto per guidarvi passo passo allo sblocco della Fonera+ usando software Windows

Di cosa abbiamo bisogno

 * 1) un computer con Windows 2000 o XP o Vista (puah!)
 * 2) un cavo di rete ethernet

Il coltellino svizzero del Fonero Window$
Suggeriamo caldamente di installare i seguenti software per Windows :

TFTPD32.exe Per caricare ll file immagine attraverso RedBoot nella Fonera+.

L'ultima versione, la 3.28 è di solo 480 kB , lo potete scaricare qui. L'home page dell'autore del programma è qui (c'è anche un DHCP server, Syslog ..)

Un altro freeware TFTPD server puo' essere scaricato su sourceforge.net qui Another freeware TFTPD server can be downloaded on sourceforge.net

PuTTY programma di terminale remoto eccezionale. Supporta telnet, SSH , SSH-tunnelling e connessioni tty seriali. Un tool che non dovrebbe mancare nella vostra box, anche se non avete intenzione di sbloccare la Fonera.

La pagina ufficiale di PuTTY è qui

Suggeriamo di scaricare il pacchetto Full marcato "A Windows installer for everything except PuTTYtel"

WinSCP è un ottimo strumento per trasferire i files da e per la Fonera e anche per editarli, dal memento che l'editor vi non è implementato nella Busybox compilata da FON)

La parte server
Per prima cosa spegniamo la Fonera+!

Installiamo PuTTY con le opzioni di default

Copiamo il file TFTPD32.EXE sul nostro Windows Desktop

Dobbiamo assegnare alla nostra LAN un indirizzo IP statico per il computer nel quale TFTPD32 è installato.

Apriamo il pannello di controllo, connessioni di rete , e settiamo l'IP address a 192.168.1.254 , netmask 255.255.255.0.

Se il nostro computer normalmente è dotato di un indirizzo IP statico, annotiamoci la configurazione che andremo a cambiare in un fogliettino , ci servirà per far rifunzionare le cose una volta terminato il nostro sporco lavoro. In alternativa possiamo assegnare tramite la configurazione avanzata TCP/IP un secondo indirizzo alla scheda di rete.

Dal momento che accedere al RedBoot non è proprio una cosa semplicissima, lanciamo da un terminale di windows un ping permanente verso la fonera con il comando : Start Menu/Esegui cmd invio

ping -t 192.168.1.1

Non preoccupiamoci se vedremo il messaggio Host is dowwn or not responding or similar...

Accedere al RedBoot
Come abbiamo detto prima, non è proprio così semplice accedere al RedBoot , tuttavia qualche piccolo script ci può aiutare. Questa pagina dedicata al firmware alternativo per l' NLSU2 di Linksys ci puo' dare più di qualche spunto

Appena pochi secondi dopo aver riacceso la Fonera+, dobbiamo iniziare una sessione telnet con la Fonera+ all'indirizzo '192.168.1.1.' porta 9000

Di Default RedBoot è in ascolto su questa porta solo 2 secondi prima del normale kernel booting.

Lanciamo PuTTY e inseriamo i parametri di collegamento come evidenziati nello screenshot qui sotto.

I parametri sono Host name (or IP address): 192.168.1.1", "Port 9000" e per il tipo di connessione Telnet''

Possiamo salvare la configurazione e nominarla per esempio Redboot o Fonera o qualsiasi altra cosa vi salti in testa !



Ora proviamo a connetterci a RedBoot, ma dobbiamo essere pronti e reattivi !! Solo due secondi dall'inizio !

- organizziamo le nostre finestre sullo schermo in modo di vedere simultaneamente MSDOS ping -t e la finestra di connection manager di PuTTY

- Accendiamo la Fonera+ e clickiamo sul bottone Open nella finestra di dialogo di PuTTY

- Non appena dalla finestra del terminale da dove stiamo pingando 192.168.1.1 notiamo la scritta : reply from 192.168.1.1, dalla finestra di PuTTY diamo CTRL-C sulla tastiera.

Se tutto fila liscio dovremmo ottenere il prompt di RedBoot !

Questa è la cosa più complicata da fare.

== Executing boot script in 0.890 seconds - enter ^C to abort ^C RedBoot>

Se dovessimo fallire al primo tentativo, non ci rimane che provare e riprovare fino a mettere a punto la nostra sincronicità

Alcuni controlli prima della scrittura in memoria
Ora che abbiamo il nostro prompt di RedBoot, controlliamo gli indirizzi di memora FLASH con il comando fis list e verifichiamo che siamo uguali ai valori qui sotto:

RedBoot> fis list Name             FLASH addr  Mem addr    Length      Entry point RedBoot          0xA8000000  0x80040400  0x00030000  0xA8000000 loader           0xA8030000  0x80100000  0x00010000  0x80100000 image            0xA8040000  0x80040400  0x00230004  0x80040400 image2           0xA8660000  0xA8660000  0x00140000  0x80040400 FIS directory    0xA87E0000  0xA87E0000  0x0000F000  0x00000000 RedBoot config   0xA87EF000  0xA87EF000  0x00001000  0x00000000

Controlliamo con cura l'output qui sopra. E' fondamentale che i valori che otterremo dal comando fis list siano assolutamente identici a quelli qui sopra.

Ancora un controllo agli indirizzi di memoria

E ancora un altro

Se tutto collima alla precisione possiamo procedere con il flashaggio della memoria.

Carichiamo l'immagine sulla fonera con TFTP
Prepariamo il server TFTPD32. Lanciamo TFTPD32.EXE, come in questo esempio , creiamo una nuova directory C:\local (radice del server)

Cambiamo i parametri :

Change parameters : Current directory : C:\local Server interface : (select 192.168.1.254 if necessary).



Scarichiamo il file immagine in C:\local.

Un pop-up apprirà dopo il trasferimento correttamente avvenuto.

Flashaggio
Passaggio pericoloso questo, stiamo per riprogrammare la memoria FLASH:

Rispondiamo "y" quando ci viene chiesto di continuare con il flashaggio in memoria.

NOTA IMPORTANTE : mentre premiamo "y" per accettare il processo di flash, la Fonera+ smetterà di rispondere a ping che continuano in background dal teminale MSDOS di windows. Il messaggio "Erase from 0xa8260000-0xa8650000: ." e tutti gli altri puntini che vedete qui sotto non appariranno.

Non preoccupatevi, non scollegate la Fonera+ , attendete giusto un paio di minuti. I ping riprenderanno a ricevere risposta e il rimanente testo verrà mostrato sullo schermo.

Ogni punto è un blocco di 64kB di memoria. L'output con scroll si puo' ottenere correttamente via porta seriale, ma questo esula dal tema di questo howto.

Reset
Ci siamo quasi, l'ultimo comando da dare è reset per rebootare la vostra nuova fonera+ LIBERATA.

Accesso in shell remota
Non appena la Fonera+ si sarà riavviata, connettiamoci alla rete wireless privata (La My_Place) o con un cavo ethernet e usiamo SSH per loggarci.

Se la Fonera+ è collegata alla porta WAN (internet), aspettiamo fino a che il LED Power diventa verde prima di accedere via SSH. Se la Fonera+ fosse scollegata da internet, dobbiamo aspettare circa 2 minuti.

Come evindeziato prima, creiamo un nuovo profilo in PuTTY per connetterci alla Fonera+

I parametri da configurare sono : "Host name (or IP address): 192.168.10.1".

Per il tipo di connessione spuntare SSH, porta numero 22

Salviamo la configurazione sotto un nome di fantasia, mi raccomando , se useremo nomi generici tipo Fonera o Fonera plus potrebbe non funzionare. Nel mio setup salvando il profilo sotto ragazza di Ipanema ha funzionato a meraviglia.

Clickate su Open. Dal momento che è la prima connessione sicura alla fonera, dobbiamo accettare il Security Alert che PuTTY farà apparire.



Non appena siamo al login prompt inseriamo user: root password admin



=MacosX howto=

In questa sezione, vi guideremo attraverso il processo d isbloggaggio della Fonera+ usando MacOSX. Questo è il sistema che gira nel mio laptop, e posso garantire che tutto è filato liscio come l'olio.

Di cosa abbiamo bisogno

 * 1) un Imac o Macbook(pro) o MacPro o MacMini
 * 2) un cavo di rete

La parte server
Dobbiamo istallare un server tftp sul nostro Mac. Io ne ho scelto uno molto semplice da usare, e si chiama (fantasia! ) tftpserver.

Potete scaricare il programma qui

Una volta installato, aprite un terminale ( si anche con macos ci si può trastullare con la riga di comando) e scrivete:

cd mkdir tftp

E creiamo una directory chiamata tftp all'interno della vostra home.



Ritorniamo al nostro termiale e impartiamo il comando per prelevare il file immagine da flashare in memoria.

Aspettiamo un po' è un file di circa 6.1 Mb.

Ora possiamo clickare su "start TFTP" nella finestra del programma tftpserver

La parte client
Prendiamo un cavo di rete, inseriamo un'estremita nella fonera+ (prea nera) e l'altra nella porta di rete del vostro Mac.

E' tempo di dare un nuovo indirizzo di rete alla vostra macchina :

E ora creiamo un piccolo script.

Manderà pacchetti arp attraverso la rete, aspettando risposta da 192.168.1.1 (l'indirizzo IP della Fonera+). non appena riceverà risposta, lo script lancerà una sessione telnet verso l'host scelto e invierà un segnale CTRL C. Viene invocato anche nc prima della sessione vera e propria di telnet, per essere più sicuri che il nostro CTRL C venga accettato e per ottenere quindi il prompt di redboot

Ecco cosa digitare in terminale per la creazione dello script

Rendiamolo eseguibile:

Accesso al redboot della Fonera plus
Spegniamo la Fonera+, scollegando il cavo di alimentazione ed eseguiamo lo script che abbiamo appena creato creato:

Inseriamo la nostra password di utente Mac e ricolleghiamo l'alimentazione alla Fonera. Il nostro simpatico routerino bianco e arancione comincierà la procedura di boot a RedBoot attenderà per 2 secondi di ricevere un segnale di CTRL C attraverso una sessione telnet sulla porta 9000 all'indirizzo 192.168.1.1.

Ecco cosa dovreste vedere sul vostro terminale:

Attenzione, non appena vedrete le seguenti linee:

RedBoot> ??

Premete subito CTRL C sulla tastiera e riceverete il prompt di RedBoot:

RedBoot>

Alcuni controlli prima di riscrivere la memoria
Ora controlliamo se i vostri indirizzi di memoria sono conformi a quelli che vedrete evidenziati qui sotto.

Potete controllarli impartendo il comando "fis list" da redboot

Controlliamo con cura l'output qui sopra. Dovreste ottenere esattamente gli stessi valori.

Un altro ulteriore controllo sugli indirizzi di memoria :

E un altro ancora

Se tutti i valori collimano alla perfezione, allora siamo pronti alla riscrittura della memoria flash.

Caricamento dell'immagine sulla fonera via tftp
Per prima cosa carichiamo il file image.bin sulla fonera+ per mezzo del server tftp

Scrittura della memoria FLASH
Passo pericoloso questo, dobbiamo riprogrammare la memoria FLASH:

Rispondiamo "y" quando ci chiederà di continuare il processo di flash della memoria.

Reset
Ok ci siamo! L'ultimo passo da compiere e lanciare il comando "reset" per effettuare il reboot della vostra nuova fonera+ liberata.

Accesso in shell remota
Non appena la Fonera+ avrà effettuato il reboot, connettiamoci alla rete privata wireless ( la MyPlace per intenderci) e usiamo ssh per effettuare il login.

Gioia, gaudio. La fonera ora è libera !

=Settaggi finali e piccoli aggiustamenti (procedura unica per tutti i sistemi operativi)=

Aggiornamento della configurazione personale da FON
Appena riflashato la nostra Fonera+ si resetterà ai parametri di default. Possiamo verificare questo, controllando l'interfaccia web all'indirizzo 192.168.10.1.

Per aggiornare la nostra configurazione, logghiamoci su www.fon.com e accediamo alla nostra userzone.

Selezioniamo il nostro router e aggiorniamo la WIFI privata e il SSID pubblico. Se non vogliamo cambiare nome, è sufficiente cambiare anche solo una lettera e clickare sul bottone update.

Per la WLAN privata, cambiamo la chiave WEP/WPA , usando la procedura di cui sopra.

I server di fon.com invieranno la nuova configurazione alla fonera+

Aspettiamo alcuni minuti e controlliamo la nostra web gui. NOn c'è bisogno di fare reboot.

Registrati o no?
Se abbiamo già registrato la nostra foneraplus prima dello sbloccaggio della porta ssh, controlliamo attraverso la web gui se tutto è a posto.

Se vediamo i logo your Fonera+ has not been registered, è importante cambiare questo parametro per permettere l'accesso pubblico alla nostra WLAN.

Per fare questo apriamo una console remota ssh :

Diamo un reboot e ricontrolliamo attraverso la web gui e verifichiamo che il logo sia cambaito in " Your Fonera is registered OK"

Updates automatici (thinclient)
'''FREEWLAN comments welcome !! You have more experience about bricking with auto-update...'''

Editiamo il file /bin/thinclient:

Commentiamo questa linea con un #

Inseriamo inoltre una nuova linea appena sotto, così :

Verifichiamo :

I comandi di upgrade inviati da thinclient ora son mantenuti in /tmp.

Controlliamo i messaggi sui forum di Fon per sapere se questi upgrade andranno a modificare oppure no il firmware. Come possiamo fare con la fonera 1.0, possiamo lanciare manualmente gli upgrades.

Nel nostro esempio di sopra : " . /tmp/thinclient-20071024-0745" lancerà lo specifico aggiornamento.

Installazione di pacchetti aggiuntivi con ipkg
La versione ufficiale del kernel per il firmware 1.1.1r1 è il 2.6.19.2.

Possiamo installare pacchetti ipkg precompilati da questa repository OpenWRT: http://downloads.openwrt.org/kamikaze/7.06/atheros-2.6/packages

'ad eccezione dei pacchetti kmod-*

I pacchetti kmod devono essere installati dalla compilazione originale di Fon.

Qui possiamo trovare una repository temporanea per questi pacchetti kmod-*-fonera-1_mips.ipk'

In alcune circostanze ipkg è estremamente lento e errori di memory underrun possono occorrere.

Alcuni suggerimenti:

'scarichiamo con wget'' nella directory /tmp il pacchetto e poi installiamolo :

Ammazziamo senza pietà i processi non necessari in esecuzione con il comando killall. Fra questi dnsmasq,chilli,fonstate,httpd,fonsmcd,crond,hotplug2,logger,syslogd,klogd,watch_chilli

Aggiornamento di BusyBox
BusyBox fornito nel firmware originale di FON è molto scarso.

Upgradando al BusyBox versione 1.4.2-1, ci permetterà di usare l'editor vi e di avere i dir-colors nel nostro terminale. Forse anche di più !

Busybox provided in original firmware by FON is very poor.

L'installazione dovrebbe durare circa 5, 7 minuti , siamo pazienti !

Se otteniamo errori del tipo ipkg: fork failed: Cannot allocate memory  cominciamo a falcidiare processi senza alcuna pietà ( init lasciamolo in piedi e anche dropbear ) :)

Non scordiamo di dare reboot dopo l'installazione.