domingo, 14 de marzo de 2010

SSH: Conexiones seguras para tod@s ( y III ) VPN's

Pues aqui esta la ultima parte de SSH: Conexiones seguras para tod@as, las VPN's, vamos alla...
[Nota]: en todo el proceso vas a necesitar privilegios de root

Preparando el terreno
Para poder utilizar un servidor SSH para hacer una VPN, tendremos que hacer algunos cambios:

El primero es cargar el modulo del kernel "tun" (si aparece al hacer lsmod|grep tun , no hace falta), esto se puede hacer con modprobe tun

Despues vamos a /etc/ssh/sshd_config y comprobamos que los parametros PermitRootLogin y PermitTunnel esten activados (yes)

Y reiniciamos el servidor SSH

Levantando la VPN

Se establece una conexion SSH  con el servidor de una forma parecida a la que se utiliza para usarlo de proxy:
ssh -w <interface local>[:<interface remota>]  [<usuario> @]<host>
Las interfaces seran las que conecten la VPN, se pueden especificar a traves de un numero (que no puede estar en uso), o "any" (para utilizar la primera "no ocupada").

[Nota]: Siempre se va a necesitar una cuenta root en el servidor (ya que se crean nuevas interfaces)

Automaticamente, se crearan interfaces tunel (del tipo point to point) en el cliente y en el servidor (por ejemplo seran tun0 y tun1, aqui para abreviar,usaremos tunC para la del cliente y tunS para la del servidor)

Pues bien, una vez creadas hay que conectarlas, suponiendo que la VPN vaya a utilizar la subred 10.0.0.0, que el servidor vaya a  utilizar la IP 10.0.0.1, y el cliente 10.0.0.9, habria que hacer:

En el cliente: ifconfig tunC 10.0.0.9 pointopoint 10.0.0.1  

En el servidor: ifconfig tunS 10.0.0.1 pointopoint 10.0.0.9

(La "formula general" seria ifconfig <interfaz tunel> <IP local> pointopoint <IP remota> )

Y ya esta, se acabo el SSH! (al menos por ahora ;)} )

[ Referencias ]
http://prefetch.net/
http://fermiparadox.wordpress.com/

No hay comentarios:

Publicar un comentario