Scopo del "gioco" e' riuscire a realizzare un piccolo server web sul nostro amato router fornitoci da Telecom Italia, facendo girare un piccolo sito web statico personale.
Il vantaggio di tale operazione e' avere un webserver su un router che, nella maggior parte dei casi, e' sempre in linea, evitando cosi di tener un computer acceso!!!
Eventualmente possiamo anche usarlo come deposito dati raggiungibile da qualsiasi parte del mondo o altri per usi futuri.
La guida e' riferita solo a questo particolare modem Alice Gate 2 Plus WIFI prodotto da "Pirelli"
ecco come si presenta il router:

Ecco una foto del retro:

Requisiti
Le caratteristiche hardware principali sono le seguenti:
CPU: BCM6348SKFBG
Flash: 8 MByte
SDRAM: 16 MByte
Come prima cosa dobbiamo creare il nostro sito personale ed allocarlo in una directory che chiameremo ad esempio "www".
Fatto cio' prendiamo l'hdd che andremo a collegare al nostro router e copiamo all'interno la cartella contenente il nostro sito.
In seguito colleghiamo l'HD al router e accediamo ad esso usando ssh in questo modo:
ssh admin@192.168.1.1
Inseriamo la password (di default corrisponde ad "admin") e in seguito digitiamo:
sh
Cosi' avremo accesso alla BusyBox.
Ora, supponendo che l'HD sia montato in "sda1", digiteremo nella console della BusyBox:
cd /var/mounts/sda1
e dovremo ritrovarci la cartella www copiata in precedenza.
Il prossimo passo da eseguire e' appunto la creazione del file di configurazione di mini_httpd con l'editor di testo "vi" presente sul nostro router.
Il file e' strutturato nel seguente modo:
# Nome File mini_httpd.conf # porta su cui avviare il server port=8888 # Directory principale del nostro sito web data_dir=/var/mounts/sda1/www
Per crearlo basta digitare:
vi mini_httpd.conf
Fate un copia e incolla del testo sopra e salvate premendo "Esc" e in seguito digitando ":x" ed premendo infine "Invio".
Come prima cosa creiamo un virtual server con porta esterna 80 e interna 8888 (come nel nostro esempio).
Ecco uno screenshoot:

In seguito bisogna aggiungere in Security -> IP Filtering - Inbound Filters, una riga per abilitare il traffico TCP verso l'ip interno del router (porta 8888):

Per avviare il server bastera' dare il comando nella BusyBox:
mini_httpd -C /var/mounts/sda1/mini_httpd.conf
Poi per testare in locale il funzionamento bastera' digitare nel vostro browser:
192.168.1.1:8888
Se non siete nella vostra LAN locale, digitate il vostro ip o il vostro indirizzo creato con un servizio di dns dinamico.
Questo e' tutto! Per darvi un idea vi linko il mio piccolo sito hostato sul mio aga (acronimo per identificare il modello "Alice Gate 2 Plus WiFi"): esteban.homelinux.org
Ora resta un ultimo problema. Se abbiamo abilitato sul nostro router la possibilita' di accedere alla schermata di configurazione del router dall'esterno, una volta avviato il nostro server ovviamente non sara' raggiungibile, perche' la porta 80 e' occupata dal nostro nuovo webserver.
Io ho risolto il problema nel seguente modo:
Quando ho bisogno di visualizzare la schermata di configurazione del router, creo un tunnel ssh con il router e una volta effettuato cio' mi bastera' collegarmi al mio ip o l'alias creato con dns dinamico, ad esempio:
94.102.63.34 or esteban.homelinux.org
e apparira' la schermata di configurazione. Questo perche' con il tunnel ci ritroviamo a sfruttare la connessione locale del router e non piu' quella esterna, quindi e' come se lavorassimo nella LAN locale!
Se avete problemi non esitate a contattarmi!
Per aggiornare il nostro sito web vi consiglio di utilizzare un client FTP in modo da potervi collegare al router prelevare i file, modificarli e ricaricarli.
Il demone FTP si attiva comodamente dalla schermata di configurazione del router precisamente in: Extra Setting -----> Share -----> FTPD Configuration.
Il WebServer in questione ogni volta che riavviate il router va offline e per renderlo funzionale di nuovo bisogna riavviarlo digitando di nuovo nella BusyBox:
mini_httpd -C /var/mounts/sda1/mini_httpd.conf
Per ovviare cio' possiamo impostarlo come uno script da eseguire all'avvio.
Vediamo come procedere:
come primo passo digitiamo nel browser:
192.168.1.1
dirigiamoci in:
Extra Setting -----> Utility -----> Startup Script
ci toveremo dinanzi ad una schermata simile ad un editor di testo dove inseriremo:
mini_httpd -C /var/mounts/sda1/mini_httpd.conf
spunteremo la casella: Enable startup script
e premeremo il tasto Save.
Ora ogni volta che riavvieremo il nostro router il nostro WebServer ripartira' con esso, quindi non ci sara' piu' bisogno di farlo ripartire a mano nella BusyBox!
Ecco uno screeshoot della schermata Starpup Script:

Si ringrazia "roleo" del forum ilpuntotecnicoeadsl per aver creato il firmware basato sull'USR ed aver aggiunto mini_httpd ad esso!
Per assistenza tecnica contattatemi al mio indirizzo e-mail:
stefanoviola85 [@] gmail [.] com
Enjoy...
Esteban Sannin!
Comments
Tu sei un genio!!!
Complimenti per l'articolo, non te li ho mai fatti, ma leggendolo mi devo complimentare con te. Bravo Esteban Sannin.
Assistenza e Aiuto...
Come avete potuto notare, questa sera ho riordinato un po la wiki, cancellando tutti i vecchi commenti e aggiornando ulteriormente la guida.
Questo perche' i commenti legati alle guide non sono stati concepiti per fare assistenza agli utenti, ma per proporre suggerimenti da integrare alla guida.
Comunque se avete bisogno di assistenza oppure avete dei problemi di configurazione del router, o avete richieste particolari per quanto riguarda la stesura di nuove guide, potete farlo tranquillamente inviandomi una e-mail al mio indirizzo di posta elettronica:
stefanoviola85 [@] gmail [.] com
Vi rispondero' a tutti senza nessun problema! :-)
Esteban Sannin!
Ci sono novità :D
Stefano se guardi sul forum del puntotecnico ora ci gira anche php e lighttpd :D
raf
Ti ringrazio!!!
Ciao Esteban Sannin volevo ringraziarti ancora per l'aiuto che mi hai dato nel cercare di far funzionare (CON SUCCESSO) il mio web-server!!!!
E funziona alla grande!
Adesso faccio una piccola domanda: se nella porta usb io attacco un hub (alimentato) usb...e poi attacco sia la chiavetta con il sistema operativo..sia la stampante...il webserver...mi farà anche da print server!?!? Sarebbe una gran cosa...e se poi ci attaccassi anche la macchina del caffè!??!
Sei veramente un grande!!!
Con stima!!!
Manuel
Post new comment