La conexión SSH con la clave desde mi máquina de repente se volvió increíblemente lenta (¡~10 segundos!). Por lo que puedo entender, no es un problema de servidor o DNS.
El problema apareció de repente después de una simple apt-get install kubuntu-desktop
y menor manipulación relacionada con KDE, en miUbuntu 15.04 x86_64.
Correr ssh -vv ...
me muestra que espera por mucho tiempo (la mayor parte de los ~10 segundos...) en la última línea de esto:
OpenSSH_6.7p1 Ubuntu-5ubuntu1, OpenSSL 1.0.1f 6 Jan 2014 debug1: Reading configuration data /home/neuronq/.ssh/config debug1: /home/neuronq/.ssh/config line 1: Applying options for XXX.com debug1: Reading configuration data /etc/ssh/ssh_config debug1: /etc/ssh/ssh_config line 19: Applying options for *
...y mi /etc/ssh/ssh_config
contiene esto (no pegué las líneas comentadas):
Host *
SendEnv LANG LC_*
HashKnownHosts yes
GSSAPIAuthentication no
GSSAPIDelegateCredentials no
¿Hay alguna manera en que la instalación de escritorio de Kubuntu pueda resultar repentinamente en esta desaceleración (alguna cosa rara en el almacén de claves/billetera)?(Además, en KDE no pude hacer que el inicio de sesión ssh mediante clave funcionara en absoluto, excepto en la terminal haciendo manualmente un ssh-add
de antemano e ingresando mi frase de contraseña clave, pero desde entonces abandoné KDE por completo y volví a Unity, así que ya no me importa esto... pero podría estar relacionado)
Respuesta1
¿Tiene los mismos problemas con la autenticación de contraseña o esto está realmente relacionado con la autenticación de claves?
Su cliente puede proporcionar una resolución DNS adecuada, pero es su servidor el que intentará de todos modos realizar una búsqueda inversa desde su dirección IP; esto puede explicar el retraso, como dice @kasperd. Pero por experiencia, esto no supera los pocos segundos.
¿SSH finalmente logra la autenticación? Si es así, realmente parece un problema de DNS. Intente si su configuración/administrador lo permite, agregue su IP/nombre de host en el archivo /etc/hosts del servidor. Esto omitirá la resolución DNS en el lado del servidor. Si no configura su DNS para proporcionar una búsqueda inversa adecuada en el lado del servidor para el cliente, useDNS no
como dice @kasperd, debe colocarse en el /etc/ssh/sshd_config
servidor.
Si su administrador no hace esto, no hay nada más que pueda hacer.
EDITAR: No hay absolutamente ninguna manera de que KDE/Unity o cualquier administrador de escritorio pueda provocar esta desaceleración. Me sorprendería enormemente que este fuera el caso. Sin embargo, el hecho de que debes proporcionar ssh-add
para usar tus claves es interesante. Este comando se utiliza para hacer que su agente de autenticación recuerde las frases de contraseña que indicó para sus claves. Para especificar la clave que se utilizará, hágalo mediante la línea de comando o en su ~/.ssh/config
archivo:
# in your command line:
ssh -i /path/to/your/private/key user@host
# or in your /home/$user/.ssh/config file:
# (on command line later, simply use ssh user@host or ssh host if
# user locally and remotely are the same
Host $myhost
IdentityFile /path/to/your/private/key
IdentitiesOnly yes
Respuesta2
Para mí, la solución real fue agregar AddressFamily inet
mi localhost al ~/.ssh/config
host apropiado o /etc/ssh/ssh_config
a Host *
.
La causa del problema probablemente fue la reciente actualización a Ubuntu 15.05 y ssh ahora estaba intentando (pero fallando, con un gran retraso...) usar IPv6.