Hago muchos cambios entre mis computadoras LAN y mis dos cuentas de alojamiento web, por lo que he resuelto todo tipo de probabilidades y termina con SSH, incluidos los problemas de autenticación ssh -v
para ver dónde y qué salió mal.
Después de haber resuelto este problema y no estar contento con las respuestas, quería saber realmente "por qué" ...
El desencadenante de mi caso es: instalé un nuevo sistema operativo del servidor en el trabajo y al instalar el paquete openssh-server, se generó un nuevo conjunto de claves de host en el servidor del trabajo. Anteriormente, todos los sistemas operativos de mi servidor eran Ubuntu y esta vez cambió a Debian (y sospecho que hay una diferencia matizada en los permisos).
Cuando todos los sistemas operativos eran Ubuntu y reinstalo el sistema operativo de un servidor, en el primer SSH en él, recibo este tipo de advertencia, que prefiero sobre la advertencia silenciosa anterior.
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ 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
06:ea:f1:f8:db:75:5c:0c:af:15:d7:99:2d:ef:08:2a.
Please contact your system administrator.
Add correct host key in /home/user/.ssh/known_hosts to get rid of this message.
Offending key in /home/user/.ssh/known_hosts:4
RSA host key for domain.com has changed and you have requested strict checking.
Host key verification failed.
Luego abro ~/.ssh/known_hostsen la computadora iniciando el ssh, borro esa línea, vuelvo a conectar y esto sucede:
chris@home ~ $ ssh work
The authenticity of host '[work]:11122 ([99.85.243.208]:11122)' can't be established.
ECDSA key fingerprint is 56:6d:13:be:fe:a0:29:ca:53:da:23:d6:1d:36:dd:c5.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '[work]:11122 ([99.85.243.208]:11122)' (ECDSA) to the list of known hosts.
Linux rock 3.2.0-4-amd64 #1 SMP Debian 3.2.51-1 x86_64
De eso se trata: 11122 es el número de puerto desde el que enruto SSH en el firewall
Verifiqué las copias de seguridad de un antiguo servidor Ubuntu y comparé con mi nueva instalación de Debian:
Ubuntu: Debian:
# Package generated configuration file # Package generated configuration file
# See the sshd(8) manpage for details # See the sshd_config(5) manpage for details
# What ports, IPs and protocols we listen for # What ports, IPs and protocols we listen for
Port 22 Port 22
# Use these options to restrict which interface # Use these options to restrict which interfaces
#ListenAddress :: #ListenAddress ::
#ListenAddress 0.0.0.0 #ListenAddress 0.0.0.0
Protocol 2 Protocol 2
# HostKeys for protocol version 2 # HostKeys for protocol version 2
HostKey /etc/ssh/ssh_host_rsa_key HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_dsa_key HostKey /etc/ssh/ssh_host_dsa_key
------------------------------------------------ HostKey /etc/ssh/ssh_host_ecdsa_key
#Privilege Separation is turned on for security #Privilege Separation is turned on for security
UsePrivilegeSeparation yes UsePrivilegeSeparation yes
Entonces, sí, probablemente, el host comenzó a usar claves ecdsa recientemente, lo que basado en los cambios de Ubuntu últimamente, culparía a una actualización. El alejamiento de Ubuntu del sólido sistema operativo Linux con el que contaba es la razón por la que instalé Debian esta vez.
Leí un security.SE q / a en ecdsa y ya he eliminado esa línea de sshd_config
mi nuevo servidor Debian. (y corrió service ssh restart
)
The ECDSA host key for server has changed
. Mi forma es eliminar la cadena de caché relacionada sobre el dominio en~/.ssh/known_hosts
. Entonces el ssh funciona.