OpenSSH

Reenvío dinámico de puertos / montar un servidor SOCKS con SSH

   

En la entrada anterior, Creando túneles TCP/IP (port forwarding) con SSH: Los 8 escenarios posibles usando OpenSSH, vimos todas las posibilidades que tenemos a nuestra disposición para el reenvío de puertos (port forwarding)… pero para el reenvío de puertos estático. Es decir, allí sólo vimos casos en los que queríamos acceder únicamente a un puerto de otro sistema encauzándolo por dentro de la conexión SSH.

Sin embargo, en aquella entrada nos dejamos en el tintero el reenvío dinámico de puertos y varios lectores lo echaron de menos, de modo que esta entrada tratará de complementar a aquélla (muchas gracias a todos por la sugerencia).

Creando túneles TCP/IP (port forwarding) con SSH: Los 8 escenarios posibles usando OpenSSH

   

La función típica del protocolo de red Secure Shell (SSH) es acceder en modo terminal a un sistema remoto y ejecutar allí comandos de forma segura gracias a que los datos van cifrados. Pero además, a través de esa conexión de datos segura, es posible crear túneles (reenviar puertos / port forwarding) entre los extremos conectados de forma que las conexiones TCP/IP se encauzan a través de la conexión SSH con lo que podemos conseguir saltarnos cualquier firewall o bloqueo de puertos siempre que tengamos la posibilidad de conectar con SSH.

Como este tema está muy tratado por toda la red:

Midiendo el ancho de banda de red con IPerf (y con scp, netcat, wget)

   

No sé qué le pasa últimamente a mi router Zyxel 660HW en su función de switch de red para conectar los diferentes ordenadores de casa. Mientras que el ancho de banda de red que debería de permitir para la comunicación entre los ordenadores debería de ser cercano a los teóricos 100 Mbps, hay veces que no hace falta esforzarse mucho para ver que realmente es muy inferior, hasta llegar a ver cosas como esta usando Samba entre un sistema con Ubuntu y otro con Debian:

Usando ntfsclone y dd para clonado por red con netcat

   

Siguiendo con la entrada Alternativas al Ghost para crear imágenes de NTFS en Linux: Partimage y ntfsclone, veamos ahora cómo usar el ntfsclone y el dd para crear imágenes con ntfsclone de particiones en sistemas en los que no tenemos sitio para almacenarlas o para clonar discos completos con dd directamente a través de la red sin necesidad de crear un fichero de imagen intermedio.

Hosting casero HOWTO

   

En Primer aniversario del blog os contaba que este blog estuvo en un hosting casero durante un año entero. Viendo los comentarios, parece que esto llamó bastante la atención y, de hecho, hubo unas cuantas peticiones de una entrada sobre el “hosting casero” (en adelante HC), así que, desde la mucha o poca autoridad que me da mi año de autohospedaje, ahí vamos:

Backups con rsync

   

En ¿Piensas en si un día te roban el portátil? mencioné que me gusta hacer los backups con rsync. Me gusta usarlo para backups tanto locales (copiar ficheros de un directorio a otro del mismo sistema) como remotos (copiar ficheros de un sistema a otro), y tanto en en Linux como en Windows usando Cygwin sin ningún problema de interoperabilidad para hacer backups remotos usando uno u otro como destino de las copias de seguridad.

Autentificación trasparente por clave pública/privada con OpenSSH

   

El protocolo SSH está preparado para que podamos autentificarnos de forma transparente (sin introducir una contraseña manualmente). Para ello, lo que hacemos es generar una pareja de claves pública/privada (podemos tener varias, una por protocolo) en el cliente de SSH y a continuación, al servidor de SSH le especificamos una serie de claves públicas de clientes que, si acceden con la clave privada asociada, pueden entrar sin especificar una contraseña.

Cómo hacer esto en concreto varía entre implementaciones de cliente y servidor de SSH, pero si estamos usando OpenSSH, que es lo estándar tanto en Linux y *BSD, como en Cygwin, sólo hay que seguir unos sencillos pasos que vamos a ver a continuación.