In effetti la sicurezza ? importante.
Visto che ho appena effettuate le modifiche per effettuare il tunnel ti posto i passi da seguire.
In primis devi avere openssh (se usi linux) o putty (se usi winzoz) installato sul pc client.
La rete ? piena di guide per effettuare questa operazione quindi la saltiamo (magari ce l'hai gi?)
Configurare, per maggior sicurezza, dropbear ad accettare accessi con chiave pubblica piuttosto che tramite user e password e magari cambiare anche la porta in ascolto (consigliato!)
Puoi trovare una guida qua:
http://wiki.openwrt.org/oldwiki/DropbearPublicKeyAuthenticationHowtoFatto questo siamo a met? dell'opera.
Adesso da linux lanciare il comando:
ssh -p5555 root@192.168.1.11 -L 12345:127.0.0.1:80 -L 12346:127.0.0.1:8080 -L 12347:127.0.0.1:8081
Puoi farti anche un semplice script per evitare di lanciare periodicamente questa riga cos?:
#!/bin/sh
ssh -p2225 root@192.168.1.11 -L 12345:127.0.0.1:80 -L 12346:127.0.0.1:8080 -L 12347:127.0.0.1:8081
exit
dove:
root@192.168.1.11 --> ? l'indirizzo locale della mia centralina (potrebbe essere del tipo dyndns.org o ip statico pubblico)
5555 ---------------> ? la porta dove ssh ? in ascolto (di default ? la 22)
12345 --------------> ? la porta in ascolto su dropbear che effettua il forwarding sulla 80
12346 --------------> ? la porta in ascolto sul dropbear che effettua il forwarding sulla 8080
12347 --------------> ? la porta in ascolto sul dropbear che effettua il forwarding sulla 8081
N.B Queste associazioni di porte devono essere rispettate se vogliamo che tutto funzioni! (tranne che per la 5555)
Da windows devi usare Putty ma sorvoliamo.
Adesso dobbiamo modificare qualche linea di codice negli script di truthahn.
In video.sh modificare:
indirizzo="$(echo $HTTP_REFERER | awk 'BEGIN { FS="/" } { print $3 }')"
in
indirizzo_test="$(echo $HTTP_REFERER | awk 'BEGIN { FS="/" } { print $3 }')"
if equal $indirizzo_test "127.0.0.1:12345" ; then
indirizzo="127.0.0.1"
porta_motion="12347"
else
indirizzo="$indirizzo_test"
porta_motion="8081"
fi
e pi? in basso cambiare:
<center><img src="http://$indirizzo:8081" ><br>
in
<center><img src="http://$indirizzo:$porta_motion" ><br>
In swich.sh cambiare:
indirizzo="$(uci get network.lan.ipaddr)"
in
indirizzo="$(echo $HTTP_REFERER | awk 'BEGIN { FS="/" } { print $3 }')"
L'ultimo passo da eseguire ? di aprire la porta tcp del firewall dove sta in ascolto dropbear (in questo caso la 5555) e fare un forwarding della stessa porta verso l'indirizzo locale della centralina.
Puntare con il proprio browser a:
http://127.0.0.1:12345/cgi-bin/webif/centralina/comandi.shQuesto ? tutto.
Adesso viaggeremo su connessioni criptate e la nostra centralina sar? raggiungibile in modo sicuro da internet.
Naturalmente bisogna cambiare :
ssh -p2225 root@192.168.1.11 -L 12345:127.0.0.1:80 -L 12346:127.0.0.1:8080 -L 12347:127.0.0.1:8081
in
ssh -p2225 root@tuo_nick.dyndns.org -L 12345:127.0.0.1:80 -L 12346:127.0.0.1:8080 -L 12347:127.0.0.1:8081
Testato e funzionante con Firefox.