Usa y configura SSH «like a boss»

¡Hola nómadas!

Hoy os tremos una entrada sencilla, trata de como configurar el cliente SSH (el cliente) que usamos para conectarnos a otros ordenadores, normalmente para conectarse a servidores. En una entrada anterior ya os contamos como configurar SSH para poder conectarnos a un servidor y en esta otra os contamos como bastionar o securizar al máximo el servidor SSH.

Hoy os explicaremos como usar de una forma mucho más cómoda las conexiones SSH. Lo más habitual es usar SSH tal que así:

Como se comprende es sencillo manejarse con un par de servidores, pero ¿y si tenemos algunas decenas de servidores?

Por eso desde cibernómadas os explicamos como configurar el cliente de SSH para que sea mucho más fácil conectar con los servidores. Por ejemplo con solo ejecutar ssh servidor.

El fichero de configuración está en la ruta de usuario .ssh/config en entornos GNU/Linux. En entorno Windows la ruta difiere, pues depende del cliente que se use.

El formato del fichero config es muy sencillo, básicamente son «bloques», donde cada bloque identifica donde nos queremos conectar. Los bloques se inician con la palabra clave Host, por ejemplo:

La configuración anterior se usaría para conectar por SSH con el host github.com con el usuario git y seguro que os preguntaréis ¿y como se utiliza esto con SSH? Muy sencillo, con ssh github.

Otro ejemplo,

En el ejemplo anterior realizaríamos la conexión tal que así ssh Cibernomadas y esto automáticamente  se transformará en ssh [email protected] -p 1234. Como podéis ver es bastante cómodo y sencillo de utilizar.

La verdad que la utilidad de esto viene cuando utilizamos varios servidores con sus correspondientes claves RSA, puertos distintos y diferentes del 22 para cada servidor.

Te puede interesar  Puesta en marcha de Odoo en Debian - Parte 3

¿Qué opciones podemos usar en cada «bloque»? Pues las mismas que podemos usar con el parámetro -o en el comando SSH. El listado es bastante largo, podéis verlo ejecutando man ssh o en esta web https://linux.die.net/man/1/ssh.

Alguno puede pensar, bueno, pero en ese listado de opciones no están todas las opciones que permite SSH. Cierto, pero ahora es donde viene la magia y el poder de SSH. Seguro que ya conocéis la opción -N y de lo contrario, podéis ver en el manual que esta opción se corresponde con el no ejecutar un comando remoto, usualmente /bin/bash, por lo tanto con la opción -N no se mostrara una shell en el equipo remoto.

Conexión normal

Como se ve en la imagen al conectarnos al servidor con el nombre vpn nos ofrece una shell desde la que ejecutar comandos, ahora si realizamos la misma conexión con la opción -N, vemos que no nos ofrece dicha shell.

Conexión con la opción -N

Como se ve en la imagen no hay ninguna shell, parece que la conexión se ha quedado «estancada», pero lo ciento es que está activa. Con esto os queremos mostrar que a pesar que no se pueden usar todas las opciones en el fichero de configuración es posible añadir algunas para los casos particulares.

Con esto terminamos la entrada. Hemos explicado los conceptos básicos, pero las opciones son muchas, como por ejemplo, se podría crear un alias tal que así: alias vpn=»ssh vpn -N», de modo que solo con ejecutar el alias vpn como si fuera un comando nos conectaríamos al servidor vpn con la opción -N.

Usa y configura SSH «like a boss»
Etiquetado en:                 

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *