87 votes

la connexion ssh met une éternité à s'initier, bloquée à "pledge : network" (gage : réseau)

La connexion à l'un de mes serveurs à l'aide de ssh prend plus de 20 secondes pour être initiée.

Ceci n'est pas lié aux conditions de LAN ou WAN, puisque la connexion à lui-même se fait de la même manière (ssh localhost). Une fois que la connexion est enfin établie, il est super rapide d'interagir avec le serveur.

L'utilisation de -vvv montre que la connexion est bloquée après avoir dit "pledge : network". A ce moment, l'authentification (ici en utilisant la clé) est déjà faite, comme visible ici :

...
debug1: Authentication succeeded (publickey).
Authenticated to myserver.mydomain.com ([xx.xx.xx.xx]:22).
debug1: channel 0: new [client-session]
debug2: channel 0: send open
debug1: Requesting no-more-sessions@openssh.com
debug1: Entering interactive session.
debug1: pledge: network

(...coincé ici pendant 15 à 25 secondes...)

debug1: client_input_global_request: rtype hostkeys-00@openssh.com want_reply 0
debug2: callback start
debug2: fd 3 setting TCP_NODELAY
debug2: client_session2_setup: id 0
...

Le serveur est Ubuntu 16.04. Cela m'est déjà arrivé dans le passé avec un autre serveur (Ubuntu 12.04), j'ai trouvé la solution et le problème a disparu après un certain temps...

sshd_config est celui fourni par défaut par Ubuntu.

Jusqu'à présent, j'ai essayé :

  • en utilisant -o GSSAPIAuthentication=no dans la commande ssh
  • utiliser un mot de passe au lieu d'une clé
  • utilisation de UsePrivilegeSeparation no au lieu de yes, dans sshd_config

1 votes

Pour moi, les connexions SSH lentes sont généralement dues à des problèmes de DNS, est-ce que cela pourrait être le cas ici ? Par exemple, le serveur peut être bloqué en essayant d'effectuer un reverse DNS pour l'IP du client et en attendant que cela se termine.

1 votes

En fait non : par défaut UseDNS n'est pas défini dans sshd_config et la page de manuel indique que cette option est "no" par défaut.

4 votes

Quelques recherches sur Google suggèrent que cela peut être causé par la mise à jour de systemd sans redémarrage. Et il y avait un Mise à jour de systemd pour xenial le 12 juillet . systemctl restart systemd-logind ne résout le problème que pendant une courte période pour moi.

0voto

stephane k. Points 141

J'ai remarqué la ligne suivante dans mon retour de débogage :

Control socket connect(/var/lib/jenkins/.ssh/USER@HOST:22): Permission denied

qui était un fichier appartenant à root:root pendant que je suis jenkins . La suppression de ce fichier a résolu mes problèmes.

0voto

AVL SubbaRao Points 1

Dans mon cas, la raison était un plantage de rsyslogd. Je l'ai découvert parce qu'il n'y avait plus d'entrées dans le journal /var/log/secure.

Alors j'ai redémarré le service rsyslog restart qui a résolu le problème pour nous.

1 votes

Cela n'apporte pas de réponse à la question. Une fois que vous avez suffisamment de réputation vous pourrez commenter un article ; au lieu de cela, fournir des réponses qui ne nécessitent pas d'éclaircissement de la part de l'auteur de la demande . - De la revue

0voto

ajhino Points 91

J'ai eu le même problème et nous avions configuré le service SSSD pour la connexion AD.

L'arrêt du service SSSD a réglé le problème pour moi.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X