aquí va el tutorial.
Introducción
Este tutorial esta enfocado en tuneles ssh para evadir los bloqueos de puertos que hacen algunas instituciones.
primero los requerimientos:
- tener un pc que puedas dejar prendido mucho tiempo
- saber desbloquear puertos en ese pc para salir a Internet
- tener un dominio dinámico como no-ip.org para tu pc
- Conocer algun puerto que no este bloqueado dentro de tu institucion (lo mas probable el 21 de ftp o 433 de https y de seguro el 80)
Teoría
La idea de los túneles ssh es poder evadir los bloqueos de puerto de una institución,usando cualquier puerto libre disponible. Con este puerto libre, podemos utilizar un programa como putty, al cual le indicaremos reglas de fordarwing (re-direccionamiento) que serán mandadas a un servidor ssh que se encargara de llevar a cabo este re-direccionamiento de puertos.
En palabras simples, a través del puerto libre podremos salir a cualquier puerto que deseemos.
En la imagen se realiza una conexión entre el cliente y el servidor ssh a través del puerto libre de la institución, que debe ser el puerto en que escuche tu servidor ssh y si tienes algún Firewall dentro de la lan de tu casa debe estar abierto ese puerto.
una vez realizada la conexión, con putty se mandan las reglas del tunel.
en este caso vemos 2 reglas.
En el caso 1, le decimos que utilize puerto local 10001 para que se valla por el tunel al servidor ssh y este nos comunique con localhost:5432, OJO! este localhost es donde se encuentra el servidor SSH, Y NO el localhost de donde estas corriendo la aplicación putty.
El caso 2 le decimos que use el puerto 10002 para que el servidor SSH nos re-direcione a bnet.one.cl:3030
Ok, una vez hecho lo anterior en el PC CLIENTE, en el primer caso si asemos acceso a localhost:10001 vamos estar accediendo realmente a localhost:5432 , PERO EL LOCALHOST DE LA MAQUINA DEL SERVIDOR SSH, de la dirección remota.
en el segundo caso, en el pc cliente asemos acceso a localhost:10002 y se esta accediendo realmente a bnet.one.cl:3030
Practica
1.Servidor freeSSH en tu casa
Es bastante simple la instalación del servidor SSH, solo dale a siguiente xD.
una vez instalado hay que hacerle lo siguiente:
en la pestaña de ssh, le indicamos el puerto a escuchar, recuerden que tiene que ser el puerto libre de la institución, en mi caso fue el 21.
Si quieres ademas, puedes poner un mensaje de bienvenida cuando se conecten al servidor ssh, en Banner mensaje.
hay que dejar marcado "allow local port fordarwing" y "allow remote port fordarwing"
Aquí creas los usuarios que podrán conectarse a tu servidor SSH,
cuando los crees fíjate que la forma de autorización sea "Password stored as SHA1 hash" y que le des autorización para hacer tunneling (ultima checkbox del formulario)
Una vez todo configurado puedes echar andar el servidor en la pestaña Server status, y estaríamos listo con la primera parte. (suponiendo que ya abriste el firewall de windows y algún router o firewall de tu lan para el puerto del servidor ssh).
2.Putty en tu universidad- colegio- instituto - carcel
En la primera pantalla de putty habrá que indicar la conexión al servidor ssh.
en Host name tienes que poner tu dominio DDNS (no-ip.org u otro) de tu casa, y el puerto pones el puerto de tu servidor ssh (pues claro el que también esta libre en tu institución).
- configuración de las reglas del tunnel
Bueno y aquí le decimos las reglas del tunel, (la de los casos en la teoría).
en source port (puerto local) ponemos el puerto local desde el cual queremos re-dirigir. Y en destination, ponemos destino xD
Listo, le das a OPEN, putty se conectara, te pedirá identificarte con SSH
y por ejemplo si te quieres meter a bnet.one.cl:8080 ahora no deberás hacerlo por ese destino si no que por localhost:10001 (según hayas hecho tu regla).
Anexos
glorialpulento.no-ip.org