J'ai mis en place un serveur SSH en ligne accessible publiquement par n'importe qui. En conséquence, je reçois beaucoup de connexions à partir d'adresses IP du monde entier. Bizarrement, aucune d'entre elles ne tente effectivement de s'authentifier pour ouvrir une session. Je peux moi-même me connecter et m'authentifier sans aucun problème.
De temps en temps, je reçois l' erreur : kex_exchange_identification: Connection closed by remote host
dans les journaux du serveur. Quelle en est la cause ?
Voici 30 minutes de journaux SSH (les adresses IP publiques ont été masquées) :
# journalctl SYSLOG_IDENTIFIER=sshd -S "03:30:00" -U "04:00:00"
-- Les journaux commencent le ven. 2020-01-31 09:26:25 UTC, se terminent le lun. 2020-04-20 08:01:15 UTC. --
20 avr 03:39:48 myhostname sshd[18438]: Connexion depuis x.x.x.207 port 39332 sur 10.0.0.11 port 22 rdomain ""
20 avr 03:39:48 myhostname sshd[18439]: Connexion depuis x.x.x.207 port 39334 sur 10.0.0.11 port 22 rdomain ""
20 avr 03:39:48 myhostname sshd[18438]: Connexion fermée par x.x.x.207 port 39332 [preauth]
20 avr 03:39:48 myhostname sshd[18439]: Connexion fermée par x.x.x.207 port 39334 [preauth]
20 avr 03:59:36 myhostname sshd[22186]: Connexion depuis x.x.x.83 port 34876 sur 10.0.0.11 port 22 rdomain ""
20 avr 03:59:36 myhostname sshd[22186]: error: kex_exchange_identification: Connection closed by remote host
Et voici ma configuration SSH :
# ssh -V
OpenSSH_8.2p1, OpenSSL 1.1.1d 10 Sep 2019
# cat /etc/ssh/sshd_config
UsePAM yes
AddressFamily any
Port 22
X11Forwarding no
PermitRootLogin prohibit-password
GatewayPorts no
PasswordAuthentication no
ChallengeResponseAuthentication no
PrintMotd no # traité par pam_motd
AuthorizedKeysFile .ssh/authorized_keys .ssh/authorized_keys2 /etc/ssh/authorized_keys.d/%u
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_ed25519_key
KexAlgorithms curve25519-sha256@libssh.org,diffie-hellman-group-exchange-sha256
Ciphers chacha20-poly1305@openssh.com,aes256-gcm@openssh.com,aes128-gcm@openssh.com,aes256-ctr,aes192-ctr,aes128-ctr
MACs hmac-sha2-512-etm@openssh.com,hmac-sha2-256-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-512,hmac-sha2-256,umac-128@openssh.com
LogLevel VERBOSE
UseDNS no
AllowUsers root
AuthenticationMethods publickey
MaxStartups 3:100:60
Après avoir cherché sur le web, j'ai vu des références à MaxStartups
indiquant que cela pourrait être la raison de cette erreur mais après avoir changé la valeur par défaut comme indiqué dans mon sshd_config
et en essayant plus de 3 connexions, le serveur indique clairement le problème
20 avr 07:26:59 myhostname sshd[31468]: abandon de la connexion #3 depuis [x.x.x.226]:54986 sur [10.0.0.11]:22 après MaxStartups
Alors, quelle est la cause de l' erreur : kex_exchange_identification: Connection closed by remote host
?