Actualizar las llaves del host

 

Generalidades

Esta guía proporciona tres métodos para eliminar la advertencia claves de host que no coinciden que puedes ver al conectarse a tu servidor web/dominio a través de SSH.

Antecedentes

El mensaje de error luce similar a lo siguiente:

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that the host key has just been changed.
The fingerprint for the key sent by the remote host is
REMOVED FOR SECURITY REASONS
Please contact your system administrator.
Add correct host key in /home/username/.ssh/known_hosts to get rid of this message.
Offending key in /home/username/.ssh/known_hosts:10278
Password authentication is disabled to avoid man-in-the-middle attacks.
Keyboard-interactive authentication is disabled to avoid man-in-the-middle attacks.

Esto suele significar que la clave de host del servidor web no coincide con la clave que figura en el archivo known_hosts de tu computador. Esto no suele ser motivo de preocupación y se puede resolver de diferentes maneras.

Cómo resolver el mensaje de advertencia

Hay tres métodos para eliminar este error.

Dónde ejecutar estos comandos

Por favor ten en cuenta que estas modificaciones deben realizarse en el computador que intenta conectarse al servidor de DreamHost.

Las credenciales de SSH

En los siguientes ejemplos, cambia username por tu usuario Shell y hostname por tu hostname de dominio o servidor web.

Método 1 — Generar una nueva llave de host (MAC o Linux)

Si te ha conectado a tu servidor en el pasado, se almacenó una clave de host antigua en el archivo /user/.ssh/known_hosts de tu computador. Ahora debes eliminar esta clave antigua.

  1. Abra una terminal en tu computador.
  2. Corre el siguiente comando utilizando el hostname al que intentas conectarte.
    [local]$ ssh-keygen -R HOSTNAME
    
  3. Intenta conectarte nuevamente a tu servidor a través de SSH.
    Esta vez, verás la advertencia La clave de host del servidor es desconocida. Revisa la sección a continuación para obtener información sobre cómo resolver este problema.

Método 2 — Eliminar el archivo known_hosts

Este método elimina todo el archivo known_hosts de tu computador local.

No utilices este método si inicias sesión en servidores que no sean de DreamHost. Si es así, no tendrás forma de saber si tus claves SSH han cambiado, ya que todas las claves de host se habrán eliminado.

Mac o Linux

  1. Abre una terminal en tu computadora.
  2. Navega al directorio .ssh.
    [local]$ cd ~/.ssh
    
  3. Elimina el archivo known_host:
    [local]$ rm known_hosts
    
  4. Confirma que el archivo ya no exista.
    [local]$ ls -la
    

Windows (usando PuTTY)

Debes acceder al registro de Windows para eliminar los known_hosts:

  1. Realiza una búsqueda en el menú Inicio por regedit.exe.
  2. Navega a HKEY_CURRENT_USER\Software\SimonTatham\PuTTY\SshHostKeys
  3. Puedes eliminar todas las claves o la clave de host individual en este directorio.
  4. Intenta conectarte de nuevo a tu servidor a través de SSH.
    Esta vez, verás la advertencia La clave de host del servidor es desconocida. Revisa la sección a continuación para obtener información sobre cómo resolver este problema.

Método 3 — Editar el archivo known_hosts

Esto es similar al método dos, pero en lugar de eliminar todo el archivo known_hosts, se elimina la línea de host específica en el archivo.

Este es un método avanzado. Solo usa la opción de edición de known_hosts si te sientes cómodo editando archivos a través de SSH.

Mac o Linux

  1. Ubica el número de línea en el mensaje de advertencia. En el ejemplo anterior, el número de línea es 10,278.
  2. Abre una terminal en tu computador.
  3. Navega al directorio /home/username/.ssh/.
    [local]$ cd ~/.ssh
  4. Edita el archivo known_hosts. Si estás en un Mac o Linux y si estás usando el editor "vim", puedes simplemente escribir el siguiente comando para saltar a esa línea:
    [local]$ vim +10278 known_hosts
    El editor se abre en esa línea específica.
  5. Da clic a la tecla d dos veces para eliminar esa línea.
  6. Escribe dos puntos (:) seguido de la letra x:
    [local]$ :x
  7. Presiona la tecla Enter para guardar.
  8. Intenta conectarte a tu servidor nuevamente a través de SSH.
    Esta vez, verás la advertencia La clave de host del servidor es desconocida. Revisa la sección a continuación para obtener información sobre cómo resolver este problema.

Windows

En una máquina Windows que utilice PuTTY, navega hasta la carpeta Registro como aparece en el método dos anterior. En ese directorio, aparece una lista de nombres de host. Da clic derecho en el que necesitas eliminar y luego selecciona Eliminar.

La clave de host del servidor es desconocida

La próxima vez que te conectes, verás la advertencia La clave de host del servidor es desconocida. Esto simplemente significa que no está en tu archivo known_hosts. Debes confirmar que la huella digital es la que se muestra en el panel siguiendo las instrucciones del siguiente artículo.

Una vez que hayas confirmado que coinciden, puedes iniciar sesión y la clave se actualizará automáticamente en el archivo known_hosts de tu computador.

Ver también

¿Este artículo ha respondido sus preguntas?

Última actualización el PST.

¿Aún no encuentra lo que busca?