Cómo usar el archivo de configuración SSH

Cómo usar el archivo de configuración SSH

Secure Shell (SSH) es una de las formas más utilizadas y aseguradas para conectarse a un servidor remoto. Es fácil conectarse con un servidor remoto con SSH, pero ¿qué pasa si desea conectarse con diferentes servidores y lo hace con frecuencia?. Se vuelve difícil recordar todas las direcciones de IPS, nombres de usuario, comandos y contraseñas.

Entonces, para resolver este problema, SSH le permite establecer y usar el archivo de configuración SSH para diferentes casos de uso. SSH utiliza un sistema y un archivo de configuración personalizado o específico del usuario. Puede personalizar y configurar las opciones de conexión del lado del cliente y puede almacenar información de cada servidor remoto con el que se conecte. En el artículo de hoy, explicaremos cómo usar el archivo de configuración SSH y explicar algunas de las opciones de configuración comunes.

Con un archivo de configuración SSH, puede definir y almacenar configuraciones para máquinas remotas específicas. Y esto elimina la necesidad de realizar un seguimiento de cada información como contraseña, nombre de usuario, dirección IP, etc. requerida para conectarse con un servidor remoto.

¿Cuál es la ubicación del archivo de configuración SSH?

Entonces, como le dijimos anteriormente, hay dos tipos de archivos de configuración disponibles en archivos de configuración SSH: todo el sistema y específicos del usuario (personalizados). Y sus ubicaciones son:

  1. Archivo de configuración de todo el sistema: Este archivo contiene principalmente información predeterminada que se aplica a todos los usuarios del sistema y puede encontrarla en /etc/ssh/ssh_config
  2. Archivo de configuración específico o personalizado del usuario: Este archivo de configuración es específico para el usuario y en este artículo; Este archivo será nuestro enfoque principal.

Cada usuario puede mantener un archivo de configuración SSH personalizado o del lado del cliente y puede almacenar información común que se utiliza mientras hace una conexión. El archivo permanece en formato de lectura y escritura para el usuario y otros no pueden acceder a eso.

El cliente o archivo de configuración personalizado se almacena en el directorio de inicio del usuario en ~/.directorio ssh. Lo encontrarás aqui - ~/.ssh/config o $ Inicio/.ssh/config

Por defecto, el archivo de configuración específico del usuario no existe. Para que pueda crearlo con este comando:

toque ~/.ssh/config  

Además, si no encuentra el ~/.Directorio SSH, puede crearlo con este comando:

mkdir -p ~/.ssh  Chmod 0700 ~/.ssh  

Comprender la estructura del archivo de configuración SSH

El archivo de configuración es específico de cada host y contiene información relacionada con la conexión con un servidor. Cada sección comienza con una definición de encabezado para el host y es seguido por la información y los valores que deben coincidir para las conexiones. El formato de archivo se verá así:

Host Host1 SSH_OPTion1 Valor personalizado Valor SSH_OPTion2 Valor personalizado Valor SSH_OPTion3 Valor personalizado Valor Host2 SSH_VALUE Valor personalizado Valor Host * SSH_OPTION Valor personalizado Valor 

¿Cómo funciona el archivo de configuración de SSH?

Normalmente, si desea conectarse a un servidor remoto, usará este comando:

ssh -i ~/.SSH/ID_RSA -P 22 [Correo electrónico protegido]  

No es una tarea fácil recordar el nombre de host y la dirección IP de todos los servidores con los que se conecta. Entonces, con el archivo de configuración, puede conectarse con un solo comando.

nombre de host SSH  

El SSH utilizará la información del archivo de configuración para conectarse al servidor remoto. Así que comprendamos el funcionamiento del archivo de configuración. Por ejemplo, si ejecuta el siguiente comando:

SSH Host1  

SSH primero coincidirá con el nombre de host con cada host mencionado en el archivo de configuración con un enfoque de arriba a abajo y encontrará el archivo de encabezado host1. Una vez que SSH encuentra una coincidencia para host1, también verificará a otros hosts si hay otra coincidencia similar. Si no hay otra coincidencia, SSH interpretará los valores de opción mencionados con Host1 para conectarse con el servidor.

Usando el archivo de configuración SSH

Ahora sabemos que lo que es el archivo de configuración SSH es y cómo funciona. Ahora comprendamos cómo puede usarlo para simplificar el entorno de conexión remota.

Abra el archivo de configuración en un editor.

VI ~/.ssh/config  

Y puede definir los valores de nombre de usuario, dirección IP y puerto. Por ejemplo:

Anfitrión Tecadmin HostName 192.167.54.19 Puerto 2222 ForwardX11 No Host * Usuario Tecadmin1 IdentityFile ~/.SSH/ID_RSA Protocolo 2 Compresión Sí ServeraliveInterval 60 ServerAlivecountMax 20 Loglevel Información 

Explicación de los valores utilizados en el archivo:

  • Nombre de host: Dirección IP del host del servidor remoto en el que desea iniciar sesión.
  • Usuario: Nombre del usuario, iniciará sesión como.
  • Puerto: El puerto que desea conectarse en el servidor remoto.
  • Protocolo: La versión del protocolo SSH debe preferir. Puede ingresar múltiples valores separados por una coma.
  • IdentityFile: Ubicación del archivo que contiene identidad de autenticación RSA, ECDSA y DSA del usuario.
  • Hacia adelantex11: Le permite reenviar la pantalla del servidor remoto en su máquina.
  • Compresión: Desea usar compresión durante la conexión del servidor remoto o no. Encenderlo puede ser útil para usted si tiene una conexión lenta
  • ServeraliveInterval: Se utiliza para establecer un temporizador en segundos para la conexión del servidor y en el momento dado si no se recibe respuesta del servidor, SSH enviará un mensaje para solicitar una respuesta.
  • ServerAlivecountMax: Establece el número de mensajes que deben enviarse para solicitar una respuesta del servidor.
  • Nivel de registro: Le dice el nivel de verbosidad utilizado al registrarse.

Conclusión

Entonces, ahora sabe, cómo un solo archivo de configuración puede ser tan útil para usted si se conecta con servidores remotos con frecuencia. No necesita recordar múltiples nombres de host, direcciones IP y puertos.