SSH: la contraseña del servidor remoto ha cambiado

Cuando se realiza una conexión ssh a un equipo remoto se guarda en el equipo local la clave pública del equipo remoto.

Esta clave se utiliza en futuras conexiones para certificar la autenticidad del equipo remoto.

El equipo remoto cambia su clave

Si, por el motivo que sea (reinstalación, decisión de los administradores, etc) el equipo remoto cambia su clave se producirá un error al realizar la conexión utilizando la clave antigua que se tenía guardada. Esto es así por motivos de seguridad para evitar posibles suplantaciones del equipo remoto.

Si se tiene conocimiento de que el equipo remoto ha cambiado la clave entonces hay que eliminar la clave antigua y realizar una nueva conexión, instante en el que se guardará la nueva clave para futuras conexiones.

Linux: error y solución

En este ejemplo, el equipo remoto escucha en el puerto 7654 en lugar de en el puerto estándar 22.

El mensaje de error que se genera es el 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 RSA host key has just been changed.
The fingerprint for the RSA key sent by the remote host is
cf:3f:d5:a1:f8:86:26:77:52:b3:1d:fd:6d:d2:cb:75.
Please contact your system administrator.
Add correct host key in /home/usuario/.ssh/known_hosts to get rid of this message.
Offending key in /home/usuario/.ssh/known_hosts:1
RSA host key for [equipo.remoto.es]:7654 has changed and you have requested strict checking.
Host key verification failed.

Solución

El fichero donde se guardan claves en el equipo local es /home/usuario/.ssh/known_hosts.

Según indica el mensaje de error, en este caso se trata de la primera clave guardada:

Offending key in /home/usuario/.ssh/known_hosts:1

Se puede editar este fichero y eliminar esa clave pero más sencillo es utilizar la orden ssh-keygen con la opción -R

Si se utilizase el puerto estándar ssh bastaría con indicar el nombre del equipo remoto después de la opción -R.

La misma orden con la opción -F muestra información de la clave almacenada para ese equipo.

Error relacionado: La clave para la dirección IP y nombre de equipo no coinciden

Si en algún momento se accede al equipo remoto con la dirección IP, entonces se guarda la clave asociada a la dirección IP. Si posteriormente se produce un cambio en la clave del equipo remoto la solución indicada anteriormente solamente arreglará el registro asociado al nombre. Entonces el aviso que se generará es similar a:

Warning: the ECDSA host key for ‘equipo.remoto.es’:7654 differs from the key for
the IP address ‘192.42.32.200’
Offending key for IP in /home/usuario/.ssh/known_hosts:25
Are you sure you want to continue connecting (yes/no)?

Solución

Ejecutar la orden ssh-keygen -R también para la dirección IP.

 

Fuente: www.upv.es/entidades/DISCA/

SSH: la contraseña del servidor remoto ha cambiado
VOTA EL ARTICULO POR FAVOR

Share on FacebookTweet about this on TwitterShare on Google+Digg thisPin on PinterestShare on LinkedInPrint this pageEmail this to someone VOTA Y COMPARTE

Agregar comentario

*

Suscribete

Suscribete a nuestro newsletter y mantente informado con nuestros últimos artículos, noticias y más. Todo completamente gratis.

Tu suscripción a sido realizada con éxito.