> Manuales > Manual de administración de servidores Linux

Explicamos a usar el archivo config que permite la configuración de accesos SSH para un login rápido al administrar servidores.

En el día a día de la administración de servidores realizamos muchos logueos a diferentes direcciones IP, cada uno de ellos con un usuario distinto, su propia llave SSH, etc. Si manejas más de un servidor observarás que es imposible memorizar todos estos datos, por lo que generalmente tendrás que ir tirando de notas para acordarte y quizás copia-pegas para poder lanzar más rápido los comandos de consola para la conexión SSH.

En este artículo te explicamos cómo puedes mejorar sensiblemente el flujo de conexión SSH con los servidores, por medio de un archivo llamado "config", que nos permite tener una especie de "alias" de cada máquina, ayudando en el acceso de una manera muy ágil.

Configuración ssh para el acceso ágil mediante el archivo config

Qué es el archivo config

El archivo config (config file se le suele llamar en inglés) es un archivo de texto plano, que guardamos en una ruta determinada en nuestro ordenador. Permite especificar tantos host de conexión como queramos, asignando un nombre fácil de recordar por nosotros. De este modo, para conectar con los servidores escribiremos el nombre del host en vez de toda la cadena de conexión SSH.

Por ejemplo, este es el comando de conexión habitual que haces en tu terminal para conectarte por SSH a un servidor, usando una llave SSH.

ssh -i ~/.ssh/llave_privada el_usuario@0.255.0.1

Gracias al archivo config, podemos cambiar este comando de conexión por simplemente algo como:

ssh mi_servidor

Obviamente, resulta mucho más fácil de recordar y te ahorrará probablemente copiar y pegar de cualquier lugar donde tengas escrito el comando, equivocarte al escribirlo y, en fin, agilizar tu día a dia.

Dónde se almacena el archivo config

El archivo config lo encuentras en la carpeta .ssh, donde se almacenan todas las llaves ssh que has creado en tu sistema, generalmente en la carpeta de tu usuario y dentro del directorio .ssh. Por ejemplo, la carpeta de mi usuario se llama midesweb. El archivo config lo tengo en Users/midesweb/.ssh

Nota: Puedes conocer el proceso de crear llaves ssh en un artículo publicado en DesarrolloWeb anteriormente.

Probablemente, si no lo has creado tú anteriormente, ese fichero "config" no estará en esa ruta. Así que lo tendremos que crear. Es importante saber que el archivo config no lleva ninguna extensión.

Puedes crear el archivo con cualquier editor de tu preferencia. Por supuesto, debe de ser un programa que permita trabajar con archivos de texto plano, como cualquier editor para programadores.

Nota: tener especial cuidado los usuarios de Windows a la hora de crear el archivo, ya que este sistema suele colocar extensiones a los archivos. Generalmente tu editor de programación permite crear archivos con cualquier nombre, por lo que no deberías tener problema. Además, en la configuración del explorador de archivos es recomendable indicar que el sistema no oculte las extensiones de archivos conocidos de manera predeterminada, para poder saber a ciencia cierta que el archivo no tiene tal extensión. Obviamente, si tienes un terminal de línea de comandos avanzado, también puedes crear el archivo con un comando como "touch config", desde la ruta indicada (carpeta ".ssh" en tu usuario).

Los usuarios de Linux y Mac tienen que tener en cuenta que el directorio .ssh es un directorio oculto, por lo que no lo encontraremos si navegamos con el explorador de archivos. Lo más cómodo es llegar a él mediante el terminal. Pero esto es algo que seguramente ya sepas si estás leyendo este artículo.

Contenido del archivo config

Ahora veamos el código que tenemos que escribir dentro del archivo config para crear nuestras diferentes conexiones con los servidores que administramos. Básicamente se trata de unas cuantas líneas para cada servidor, que indican los parámetros de conexión que se deben de usar.

Host desarrollowebcom
  HostName 1.2.3.4
  User root
  IdentityFile /Users/midesweb/.ssh/desarrollowebcom

Como puedes ver, estamos indicando varios parámetros:

Podemos tener varias de estas entradas, con la cantidad de servidores que fuera necesario para nosotros.

Usar las conexiones ssh configuradas

Ahora, para el acceso por SSH al servidor, simplemente tenemos que usar las conexiones, desde el terminal de línea de comandos, colocando "ssh" seguido del nombre que hemos indicado para esta conexión en particular.

ssh desarrollowebcom

Listo! con este sencillo comando habremos conseguido conectar por SSH con el servidor, usando nuestra llave, el usuario correcto y la IP. Ya no necesitamos recordar todos esos datos de conexión y podremos acceder al servidor de una manera mucho más ágil.

Miguel Angel Alvarez

Miguel es fundador de DesarrolloWeb.com y la plataforma de formación online Escu...

Manual