
fliparàs per un tub!
Divendres 23 Maig, 2008
Sovint, quan et mous amb el portàtil i et connectes a través de wifi, et trobes amb determinats ports tancats. Aleshores, què fas quan la connexió de xarxa no et permet usar determinats ports? o quan vols accedir remotament a una màquina que no té IP pública?… la solució pot passar per usar túnels SSH…
Un túnel SSH et permet aprofitar la connexió entre dues màquines via SSH per a fer-hi passar altres tipus d’informació a través d’ella.
Accés a correu-e
Per exemple, si la connexió que tens en un moment donat només et permet navegar per la web (port 80) i usar ssh (port 22) i vols que et funcioni el teu correu amb imap (ex. port 993) o l’smpt que uses habitualment (ex. port 587)… el que pots fer, és connectar-te per ssh a una màquina a la que tinguis accés i des d’aquesta, “saltar” a la que t’interessi. A continuació deixo un script d’exemple per accedir a GMail (si el teniu configurat, per exemple, des del Thunderbird):
#!/bin/bash BRIDGE=usuari@maquina.pont.cat OPTIONS=-fNL cp /etc/hosts /tmp/hosts echo "127.0.0.1 imap.gmail.com smtp.gmail.com # TUNNEL.MAIL.ALL" >> /tmp/hosts sudo cp /tmp/hosts /etc/hosts sudo ssh $OPTIONS 993:imap.gmail.com:993 $BRIDGE sudo ssh $OPTIONS 587:smtp.gmail.com:587 $BRIDGE echo "Tunnels prepared (Press RETURN to close them)" read sudo pkill -9 -f "ssh -fNL " cp /etc/hosts /tmp/hosts grep -v TUNNEL.MAIL.ALL /tmp/hosts > /tmp/hostsCLEAN sudo cp /tmp/hostsCLEAN /etc/hosts
En el moment que l’executeu, es connectarà a la màquina pont (una màquina a la que tingueu accés via ssh) i farà uns túnnels per a que us funcioni com si tinguéssiu els ports oberts des del vostre portàtil. Al prèmer return es tancaran i tot quedarà com abans.
Connectar-se a una màquina no accessible
Si el problema és que us voleu connectar a una màquina via ssh i no té IP fixa (ni se li poden redirigir els ports), també podeu usa un túnnel. Per exemple, si voleu connectar-vos a la màquina d’un amic per ajudar-lo, però té una connexió ADSL amb IP dinàmica i no pot obrir els ports del router… aleshores, el que podeu fer, és que ell executi l’script següent:
#!/bin/bash
echo “Accessing remote machine and opening a remote port, so”
echo “port 2222 on remote machine connects to”
echo “port 22 in this machine”
echo “Then you can use ’ssh -p 2222 user@localhost’ in remote machine”
echo
echo “Press Ctrl+C to stop the tunnel”
echo
# ex. ssh -N -R 2222:localhost:22 jcampos@namaste
ssh -N -R 2222:localhost:22 usuari@maquina.que.si.es.pot.accedir.cat
Amb aquest script, ell es connecta a la vostra màquina i obre un túnel a través del qual vosaltres podeu circular en sentit contrari i connectar-vos a la seva
Si en comptes de redireecionar el port 22, redireccioneu el port 5900, podreu accedir-li al seu escriptori de forma gràfica si ell el comparteix amb VNC…
Doncs res més, amb aquest parell d’exemples de túnels es veu la potència que tenen i per a que es poden usar. Jo, des de que els he descobert, que estic flipant per un tub!
[...] By | Guaita [...]