web-dev-qa-db-fra.com

long délai lors de la connexion avec CentOS7

J'ai un système CentOS 7 et lorsque je me connecte avec PuTTY ou ssh, il y a un long délai avant d'obtenir l'invite de mot de passe. J'ai exécuté ssh -v et j'ai trouvé que cela se résume à ceci:

debug1: ssh_ecdsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received

puis il reste là pendant 1-2 minutes, puis cette sortie explose:

debug1: Authentications that can continue:
publickey,gssapi-keyex,gssapi-with-mic,password
debug1: Next authentication method: gssapi-keyex
debug1: No valid Key exchange context
debug1: Next authentication method: gssapi-with-mic
debug1: Unspecified GSS failure.  Minor code may provide more information
No Kerberos credentials available
debug1: Unspecified GSS failure.  Minor code may provide more information
No Kerberos credentials available
debug1: Unspecified GSS failure.  Minor code may provide more information
debug1: Unspecified GSS failure.  Minor code may provide more information
No Kerberos credentials available
debug1: Next authentication method: publickey
debug1: Trying private key: /home/motor/.ssh/id_rsa
debug1: Trying private key: /home/motor/.ssh/id_dsa
debug1: Trying private key: /home/motor/.ssh/id_ecdsa
debug1: Trying private key: /home/motor/.ssh/id_ed25519
debug1: Next authentication method: password

Et puis l'invite de mot de passe sort. Cela se produit quel que soit l'utilisateur qui se connecte. Cela se produit uniquement sur le système 1. J'en ai 5 autres où ça se passe sans tarder.

Il n'y a pas de disque ou de mémoire ou toute autre erreur dans les journaux.

Qu'est-ce qui pourrait le retarder comme ça?

MISE À JOUR:

J'ai essayé de définir GSSAPIAuthentication sur no et cela n'a pas résolu le problème.

J'ai relancé ssh, cette fois avec -vvv. Cette sortie est sortie, puis elle s'est bloquée:

debug1: SSH2_MSG_SERVICE_ACCEPT received
debug2: key: /home/motor/.ssh/id_rsa ((nil)),
debug2: key: /home/motor/.ssh/id_dsa ((nil)),
debug2: key: /home/motor/.ssh/id_ecdsa ((nil)),
debug2: key: /home/motor/.ssh/id_ed25519 ((nil)),

Après 1-2 minutes, cela est sorti:

debug1: Authentications that can continue: publickey,password
debug3: start over, passed a different list publickey,password
debug3: preferred gssapi-keyex,gssapi-with-mic,publickey,keyboard-interactive,password
debug3: authmethod_lookup publickey
debug3: remaining preferred: keyboard-interactive,password
debug3: authmethod_is_enabled publickey
debug1: Next authentication method: publickey
debug1: Trying private key: /home/motor/.ssh/id_rsa
debug3: no such identity: /home/motor/.ssh/id_rsa: No such file or directory
debug1: Trying private key: /home/motor/.ssh/id_dsa
debug3: no such identity: /home/motor/.ssh/id_dsa: No such file or directory
debug1: Trying private key: /home/motor/.ssh/id_ecdsa
debug3: no such identity: /home/motor/.ssh/id_ecdsa: No such file or directory
debug1: Trying private key: /home/motor/.ssh/id_ed25519
debug3: no such identity: /home/motor/.ssh/id_ed25519: No such file or directory
debug2: we did not send a packet, disable method
debug3: authmethod_lookup password
debug3: remaining preferred: ,password
debug3: authmethod_is_enabled password
debug1: Next authentication method: password

Et puis l'invite de mot de passe.

15
Larry Martell

Dans ton /etc/ssh/sshd_config sur le serveur distant, vous devez remplacer l'option GSSAPIAuthentication par no. Redémarrez sshd et vous devriez être prêt à partir.

edit: GSSAPI (Generic Security Service Application Programming Interface) est essentiellement une API qui utilise les bibliothèques Kerberos pour fournir un cryptage réseau puissant. À moins qu'il n'y ait une raison particulière pour laquelle vous avez besoin que GSSAPI soit activé, cette méthode devrait résoudre le problème que vous rencontrez.

edit2: Pour plus de clarté, il peut également être possible que la vérification DNS inverse expire (en particulier la vérification de l'enregistrement PTR des hôtes se connectant). SSH effectue cette vérification d'office car il agit comme une mesure de sécurité pour valider l'hôte qui se connecte.

Cela dit, le processus n'ajoute pas grand-chose en termes de sécurité réelle car, de manière réaliste, il existe une proportion importante d'hôtes qui n'ont pas de PTR de toute façon. Il existe trois façons de résoudre ce problème:

1). Vous pouvez modifier le sshd_config fichier pour utiliser le UseDNS no paramètre. Cela arrêtera la recherche DNS inversée. C'est sûr à faire.

2). Ajoutez un enregistrement PTR dans le système DNS approprié pour l'hôte qui se connecte lentement.

3). Ajoutez une entrée manuelle dans le fichier OS hosts avec l'entrée appropriée.

J'espère que cela pourra aider!

16
Brett Levene

Cela ressemble à un problème DNS - lors d'une tentative de connexion, une recherche DNS inversée est effectuée pour fournir le nom d'hôte distant dans les journaux d'authentification.

Vérifiez que le serveur ne dispose pas d'un résolveur qui ne répond pas dans le /etc/resolv.conf fichier.

4
Admin