Je fais beaucoup de ssh-ing entre mes ordinateurs du réseau local et mes deux comptes d’hébergement Web, donc j’ai réglé toutes sortes de problèmes avec SSH, y compris des problèmes d’authentification, qui ssh -v
permettaient de voir où et quels étaient les problèmes.
Ayant juste résolu ce problème et n'étant pas satisfait des réponses, je voulais vraiment savoir "pourquoi" moi-même ...
Le déclencheur de mon cas est le suivant: le nouveau système d'exploitation du serveur installé au travail et lors de l'installation du paquet openssh-server, un nouveau jeu de clés d'hôte a été généré sur le serveur du travail. Auparavant, tous les systèmes d'exploitation de mon serveur étaient Ubuntu et cette fois, Debian a été remplacé (et je suppose qu'il existe une différence nuancée d'autorisations).
Lorsque tous les systèmes d'exploitation étaient Ubuntu et que je réinstalle le système d'exploitation d'un serveur, dès le premier SSH, je reçois ce type d'avertissement, que je préfère par rapport à l'avertissement silencieux ci-dessus!
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ 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.
Ensuite, je m'ouvre ~/.ssh/known_hostssur l'ordinateur à l'origine du SSH, supprime cette ligne, me reconnecte et ceci se produit:
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
Ce bit à propos de: 11122 est le numéro de port sur lequel je route SSH depuis le pare-feu
J'ai vérifié les sauvegardes d'un ancien serveur Ubuntu et comparé à ma nouvelle installation 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
Donc, oui, probablement, l'hôte a commencé à utiliser des clés ecdsa récemment, ce qui, selon les modifications apportées par Ubuntu récemment, serait à l'origine d'une mise à jour. Ubuntu s’est éloigné du système d’exploitation Linux sur lequel j’avais compté, c’est pourquoi j’ai installé Debian cette fois-ci.
J'ai lu le fichier security.SE q / a sur ecdsa et j'ai déjà retiré cette ligne de sshd_config
mon nouveau serveur Debian. (et couru service ssh restart
)
The ECDSA host key for server has changed
. Mon moyen est de supprimer la chaîne de cache associée à propos du domaine dans~/.ssh/known_hosts
. Ensuite, le SSH fonctionne.