Cómo corregir la advertencia: ¡la identificación del host remoto ha cambiado! error

Publicado: 2021-01-21

Ya sea que se esté conectando con un cliente SFTP o SSH a través de la terminal, un error común que aparece es la "advertencia: ¡la identificación del host remoto ha cambiado!" Esto le impide conectarse a su sitio web o servidor. Esto me sucede de vez en cuando, y es muy molesto, ya que generalmente tengo prisa por arreglar algo. Este error me detiene.

A continuación, lo guiaré a través de algunas formas rápidas y fáciles de resolver el error y volver a conectarse.

¿Qué es la "advertencia: la identificación del host remoto ha cambiado"? ¿error?

El siguiente error generalmente ocurre cuando sus claves SSH o la información de conexión del servidor ha cambiado. Por ejemplo, si recientemente migró su sitio web a un nuevo proveedor de alojamiento, su dirección IP sería diferente.

La información de conexión (dirección IP y credenciales) en su Mac se almacena en su archivo known_hosts . En Windows, se almacena en el registro. Cuando usa un cliente SFTP (mi favorito es ForkLift) o un cliente SSH (PuTTY), usa la información para conectarse al servidor web.

 [user@hostname ~]$ ssh root@user @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ 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 a host key has just been changed. The fingerprint for the RSA key sent by the remote host is xx:xx:xx. Please contact your system administrator. Add correct host key in /home/hostname /.ssh/known_hosts to get rid of this message. Offending RSA key in /var/lib/sss/pubconf/known_hosts:3 RSA host key for xxx.xxx.xx.xxx has changed and you have requested strict checking. Host key verification failed.
  • Cómo arreglar su archivo unknown_hosts en Mac
  • Cómo arreglar sus archivosknown_hosts en Windows

Cómo arreglar su archivo unknown_hosts en Mac

Hay un par de formas de arreglar su known_hosts en una Mac. Prefiero usar una aplicación, ya que es rápido y fácil. Nunca tengo que recordar los comandos de la terminal. Pero te guiaré a través de ambos métodos.

Opción 1: arreglar el archivo unknown_hosts con una aplicación (método más fácil)

Una aplicación increíble llamada SSH Config Editor le permite administrar el archivo de configuración de su cliente SSH y otras configuraciones. Hay una versión pro, y siempre recomiendo apoyar a los desarrolladores cuando puedas. Si tiene un presupuesto ajustado, la versión gratuita es suficiente para administrar su known_hosts . Siga los pasos a continuación.

Paso 1

Instale la aplicación gratuita SSH Config Editor.

Paso 2

Abra el Editor de configuración SSH y haga clic en "Archivo → Abrir hosts conocidos".

Abra el archivo hosts_conocidos
Abra el archivo hosts_conocidos

Paso 3

Busque y resalte la entrada que tiene el problema. Si no está seguro de cuál elegir, debe buscar su dirección IP anterior y actual. Si está alojando con un proveedor como Kinsta, esto se denomina "dirección IP del sitio" y se puede encontrar en su panel de MyKinsta.

Luego haga clic en el icono de la papelera para eliminar la entrada. Otra opción sería eliminar todas las entradas.

Eliminar entrada de hosts_conocidos
Eliminar entrada de hosts_conocidos

Paso 4

Haga clic en "Eliminar" en el siguiente mensaje:

¿Desea eliminar “[xx.xxx.xx.xxx]:xxxxxx” de los hosts conocidos?

Paso 5

Cierre la ventana y haga clic en "Guardar" en el siguiente mensaje:

¿Desea guardar los cambios realizados en el documento "hosts conocidos"?

Ahora debería poder conectarse a su sitio web o servidor nuevamente.

Probablemente no necesitará la aplicación SSH Config Editor con tanta frecuencia, por lo que no recomiendo anclarla a su base. Simplemente déjelo instalado para las ocasiones en que obtenga el error de conexión.

Opción 2: Arreglar el archivo unknown_hosts desde la terminal

La segunda opción es limpiar la entrada de su known_hosts usando la terminal. Siga los pasos a continuación.

Paso 1

Abra la aplicación Terminal. La forma más rápida es iniciar Spotlight y buscar "terminal". O puede encontrarlo en "Utilidades → Terminal".

terminal mac
terminal mac

Paso 2

Pegue el siguiente comando.

 nano ~/.ssh/known_hosts

Paso 3

Elimine la entrada que tiene el problema. Si no está seguro de cuál elegir, busque su dirección IP anterior y actual. Otra opción sería eliminar todas las entradas.

Paso 4

Escriba Ctrl + X ( ^X ) para salir y seleccione Y para sí cuando se le solicite si desea guardar el búfer modificado.

Editor nano terminal
Editor nano terminal

Ahora debería poder conectarse a su sitio web o servidor nuevamente.


Alternativamente, puede eliminar todo su known_hosts y dejar que se vuelva a llenar. Ingrese el siguiente comando en la terminal.

 rm .ssh/known_hosts

Cómo arreglar su archivo unknown_hosts en Windows

Antes de cambiar de Windows a Mac, en realidad nunca encontré este error. Pero estoy documentando lo siguiente por si acaso. En Windows, no tienen un archivo known_hosts , la información (dirección IP y credenciales) se almacena en el registro. Siga los pasos a continuación.

Paso 1

Abra su menú de inicio y busque "regedit". Haga clic en "Entrar".

Regeditar
Regeditar

Paso 2

Vaya a la siguiente carpeta de registro:

 HKEY_CURRENT_USER\SoftWare\SimonTatham\PuTTY\SshHostKeys
Editor de registro SshHostKeys
Editor de registro SshHostKeys

Paso 3

Dentro de la carpeta "SshHostKeys", elimine la entrada que tiene el problema. Si no está seguro de cuál elegir, busque su dirección IP anterior y actual. Otra opción sería simplemente eliminar todas las entradas.

Haga clic en "Sí" cuando reciba el siguiente mensaje:

Eliminar ciertos valores de registro podría causar inestabilidad en el sistema. ¿Está seguro de que desea eliminar este valor de forma permanente?

Cierra el Editor del Registro. Ahora debería poder conectarse a su sitio web o servidor nuevamente.

Resumen

Siempre es molesto encontrarse con errores como estos. Uno pensaría que ahora tendrían formas más fáciles integradas en los sistemas operativos para resolverlos. Por ahora, tendremos que recurrir a nuestros procesos de solución de problemas paso a paso.

Con suerte, ahora te has conectado de nuevo y estás de vuelta en el trabajo. Si esto fue útil o si tuvo un problema, deje un comentario a continuación.