BULMA Bulma amb el projecta Defective by Desing
Bergantells Usuaris de GNU/Linux de Mallorca i Afegitons   |   Bisoños Usuarios de GNU/Linux de Mallorca y Alrededores
CONTENIDOS
. Jornadas de software libre
. Version para PDA
. Enlaces breves
. La asociacion
. Los mas leidos
. Autores [Actividad]
. Ultimos Comentarios
. Todos los titulares!
. Estadisticas
. Guia de estilo
. ¿Sugerencias?
. Wiki
. XML [Ayuda]
Listas de correo
. Archivos bulmailing
. Archivos BulmaGes
Radio libre :-)
. Des de la Xarxa (Archivos)
. Mallorca en Xarxa
Busquedas

+ Enlaces Linux
Ultimos kernels
(02/09/2010 18:16:25)
    
Google


En bulma.net
En internet
Conexion ssh a traves de proxy (36581 lectures)
Por Fernando Ruza Rodriguez
fruza (http://guada24.guadawireless.net)
Creado el 19/11/2004 00:19 modificado el 20/11/2004 00:03

¿En tu curro tienen un proxy y no puedes conectar mediante una sesion SSH a tu servidor Linux de casa? ¿Te gustaria ademas abrir una sesion VNC con tu servidor Linux de casa desde el curro y a traves del proxy? Bueno, pues con este articulo lo conseguiras y de un plumazo en un ratito.

Pruebalo y me cuentas.

Pagina1/2

Establecer una sesión SSH a traves de Proxy

Despues de un tiempo hasta que lo he conseguido ..., ahora os resumo aqui mis experiencias por que seguro que le sirven a otro.

Bueno, pues el caso es que queria conectarme con ssh desde el PC del curro a mi servidor de casa pero, al igual que pasa en otros sitios, la unica salida al exterior desde la red privada del curro es a traves de proxy, unicamente permitiendo los protocolos http (puerto 80) y https (puerto 443). Bueno, pues para poder abrir una conexion ssh a mi servidor la unica forma era tunelizando el protocolo ssh con https.

Buscando y buscando encontre lo siguiente: (http://www.agroman.net/corkscrew/)

luna:/etc# apt-cache search corkscrew
corkscrew - Tunnel TCP connections through HTTP proxies

Description: Tunnel TCP connections through HTTP proxies. corkscrew is a simple tool to tunnel TCP connections through an HTTPproxy supporting the CONNECT method. It reads stdin and writes tostdout during the connection, just like netcat..It can be used for instance to connect to an SSH server running ona remote 443 port through a strict HTTPS proxy.

Asi que ya esta, justo lo que necesitaba. Arrancamos una sesion ssh tunelizada a traves de nuestro servidor proxy del curro para llegar a nuestro servidor ssh de casa usando corkscrew. Pero esta sesion es una sesion segura con lo que ha de usar el puerto 443 para que funcione con el proxy, asi que para que funcione tendremos que hacer que nuestro servidor ssh de casa este corriendo escuchando en el puerto 443 (cosa que se define en su fichero de configuracion /etc/ssh/sshd_config) o, como he hecho yo, redireccionando el puerto 443 de nuestro servidor de casa al 22:

/sbin/iptables -t nat -A PREROUTING -i ippp0 -p tcp --dport 443 -j REDIRECT --to-port 22

(cambiar ippp0 por la interfaz correspondiente de salida a internet)

Bueno, pues al grano. Instalamos corkscrew:

apt-get install corkscrew

Y luego nos creamos un ficherito para la conexion a nuestra casa que lo dejaremos en $HOME/.ssh/ConexionServidorCasa que tenga lo siguiente:

-------------------------------------------------------
# Linea para arrancar Corkscrew cuando uso ssh
ProxyCommand /usr/bin/corkscrew proxy.curro.es 8080 %h %p
-------------------------------------------------------

(Las variables %h y %p seran sustituidas por el nombre de host y puerto del servidor de nuestra casa cuando se lanza el comando ssh. Es como si arrancamos corkscrew de forma manual poniendo:/usr/bin/corkscrew proxy.curro.es 8080 servidor.casa.com 443)

Si el proxy del curro requiere autenticacion pues hay que crearnos otro ficherito, por ejemplo $HOME/.ssh/Autenticacion con el usuario y password de la forma:

usuario:password

Le ponemos los permisos correctos para que nadie pueda ver nuestro usuario y password con:

chmod 600 $HOME/.ssh/Autenticacion

Y ahora el fichero con la linea de corkscrew ($HOME/.ssh/ConexionServidorCasa) cambia a lo siguiente:

-------------------------------------------------------
# Linea para arrancar Corkscrew cuando uso ssh
ProxyCommand /usr/bin/corkscrew proxy.curro.es 8080 %h %p $HOME/.ssh/Autenticacion
-------------------------------------------------------

Bueno, pues ya esta configurado Corkscrew, ahora probamos la conexion haciendo lo siguiente:

ssh -p 443 -F $HOME/.ssh/ConexionServidorCasa usuario@servidor.casa.com

Este comando arranca corkscrew que se encarga de tunelizar nuestra sesion ssh a traves del proxy del curro hasta el puerto 443 de nuestro servidor de casa. Y ya esta, en este punto nos deberia salir el login de nuestra sesion ssh y a disfrutar de la linea de comandos de nuestro servidor estando sentaditos comodamente en nuestro curro ;-) Ah, y que no os vea el jefe ;-)


Paginas:  1  2  Abreviatura Siguiente>>

Imprimir
Version para
imprimir

Imprimir
Version
PDF
GRACIAS
Distribuciones Universal
Por el servidor
Dpto. de Matematicas e Informatica
Calificacion
***0
Vots: 19
Danos tu opinion:
**** Excelente
***0 Muy Bueno
**00 Bueno
*000 Regular
0000 Malo
Relacionados
. Confianza SSH entre Sistemas Unix: evitar el tecleo continuo de claves.
SECCIONES
Noticia
Breve
Truco
Enlace
Participa
Proyecto
Articulo
Webbulma
Manoletada :-)
Seguridad
Modificado: 10/5/2009 23:50:28 | Tiempo Total: 0.016 segs | Kernel: Linux - i686 - 2.6.26-1-686 | Last boot: 02/09/2010 20:06 CEST
Powered by Apache    MySQL    PHP    Gimp