Le problème
Nous avons été confrontés à ce problème bizarre la semaine dernière, où le SSH vers les serveurs était trop lent. SSH vers les serveurs Linux prenait beaucoup de temps, environ 30 secondes à 1 minute. SSH est resté bloqué à l'invite ci-dessous et aucune option pour entrer le mot de passe pendant 30 secondes et l'invite de mot de passe s'est affichée mais rien ne va plus loin après avoir entré le mot de passe.
# ssh -vvv [server_ip_address] OpenSSH_5.3p1, OpenSSL 1.0.1e-fips 11 Feb 2013 debug1: Reading configuration data /etc/ssh/ssh_config debug1: Applying options for * debug3: cipher ok: arcfour [arcfour,aes128-ctr,aes192-ctr,aes256-ctr] debug3: cipher ok: aes128-ctr [arcfour,aes128-ctr,aes192-ctr,aes256-ctr] debug3: cipher ok: aes192-ctr [arcfour,aes128-ctr,aes192-ctr,aes256-ctr] debug3: cipher ok: aes256-ctr [arcfour,aes128-ctr,aes192-ctr,aes256-ctr] debug3: ciphers ok: [arcfour,aes128-ctr,aes192-ctr,aes256-ctr] debug2: mac_setup: found hmac-sha1 debug3: mac ok: hmac-sha1 [hmac-sha1] debug3: macs ok: [hmac-sha1] ... debug1: Found key in /root/.ssh/known_hosts:36 debug2: bits set: 1063/2048 debug1: ssh_rsa_verify: signature correct debug2: kex_derive_keys debug2: set_newkeys: mode 1 debug1: SSH2_MSG_NEWKEYS sent debug1: expecting SSH2_MSG_NEWKEYS debug3: Wrote 16 bytes for a total of 813 debug2: set_newkeys: mode 0 debug1: SSH2_MSG_NEWKEYS received debug1: SSH2_MSG_SERVICE_REQUEST sent debug3: Wrote 52 bytes for a total of 865 debug2: service_accept: ssh-userauth debug1: SSH2_MSG_SERVICE_ACCEPT received
La solution
La connexion SSH à un serveur Linux peut être retardée ou lente si vous avez une mauvaise entrée de serveur rsyslog ou un serveur rsyslog inaccessible défini dans le fichier de configuration /etc/rsyslog.conf . Pour résoudre le problème, assurez-vous que le serveur rsyslog est toujours accessible à partir des clients rsyslog. Ou bien, comme solution de contournement, modifiez le fichier de configuration rsyslog /etc/rsyslog.conf côté client et commentez toutes les références liées à rsyslog.
1. Par exemple, modifiez le fichier /etc/rsyslog.conf et commentez-le en dessous de trois lignes.
# vi /etc/rsyslog.conf #*.* @@xxx.xxx.xxx.xxx:514 #daemon.*;daemon.!info /var/log/messages #local0.info /var/log/asmaudit.log
2. Redémarrez le service rsyslog.
# service rsyslog restart # CentOS/RHEL 6 # systemctl restart rsyslog # CentOS/RHEL 7Remarque :le service rsyslog doit être redémarré en cas de modification du fichier de configuration rsyslog.
Conclusion
Le service sshd essaiera de consigner les tentatives de connexion et d'autres journaux informatifs dans les fichiers syslog, mais s'il y a une charge sur le système ou un problème avec le service syslog pendant cette période, cela retarde les connexions jusqu'à ce que la demande soit expirée. Cela peut être contourné en résolvant le problème de connectivité avec le serveur rsyslog ou en commentant les lignes faisant référence au serveur rsyslog inaccessible.