¿Qué ralentiza mi inicio de sesión ssh?

9

Cada vez que inicio sesión en un servidor ssh, siempre es muy lento. Como decía una respuesta a mi publicación anterior , "buscar un archivo de 200 líneas debería tomar milisegundos más o menos, así que dudaría que sea eso".

Lo intenté ssh -vvv time@servery la salida se ha subido aquí . Descubrí que cuando procedo a cada una de estas tres líneas en la salida, es particularmente lento:

debug1: Next authentication method: gssapi-with-mic 

debug1: Unspecified GSS failure.  Minor code may provide more information
Credentials cache file '/tmp/krb5cc_1000' not found 


debug1: Unspecified GSS failure.  Minor code may provide more information
Credentials cache file '/tmp/krb5cc_1000' not found 

Me pregunto por qué y qué puedo hacer para cambiarlo. ¡Gracias y saludos!


Actualizar:

La respuesta de Ignacio me sugiere que "desactive todos los métodos de autenticación GSS / Kerberos en su configuración".

Entonces /etc/ssh/ssh_config, ¿debo asegurarme de que "no" está detrás de cada una de las opciones que comienzan con "GSS": GSSAPIAuthentication, GSSAPIDelegateCredentials, GSSAPIKeyExchange, GSSAPITrustDNS, GSSAPIAuthentication y GSSAPIDelegateCredentials?

Entonces, ¿cuáles son las opciones para el método de autenticación "Kerberos" que necesito poner "no" detrás?

PD: el siguiente es el contenido de mi local /etc/ssh/ssh_configcon opciones comentadas no copiadas aquí:

Host *
    SendEnv LANG LC_*
    HashKnownHosts yes
    GSSAPIAuthentication yes
    GSSAPIDelegateCredentials no
Tim
fuente
¿Cuántas veces vas a hacer la misma pregunta?
Paul Tomblin
@PaulTomblin: No muchos. :-)
Tim
posible duplicado de ¿Cómo acelerar mi inicio de sesión ssh demasiado lento?
Gilles 'SO- deja de ser malvado'
@Gilles: Gracias, arreglé mi problema de esa publicación. Antes tenía que esperar que el cursor parpadeara 30 veces, ahora se necesita que el cursor parpadee 7 veces. (1) ¿Es ahora una velocidad normal esperar que el cursor parpadee 7 veces? (2) ¿Por qué funciona comentando GSSAPIAuthentication yesy GSSAPIDelegateCredentials no?
Tim

Respuestas:

10
debug1: Next authentication method: gssapi-with-mic

Eso es Kerberos. Deshabilite todos los métodos de autenticación GSS / Kerberos en su configuración. Vea la ssh_config(5)página del manual, PreferredAuthenticationsopción, para más detalles.

Ignacio Vazquez-Abrams
fuente
¡Gracias! Por "su configuración", ¿quiere decir mi local o el servidor remoto?
Tim
PreferredAuthenticationsEstá en el cliente. En el servidor, use GSSAPIAuthenticationen su lugar.
Ignacio Vazquez-Abrams
1
¡Gracias! Entonces /etc/ssh/ssh_config, en (1) ¿debo asegurarme de que "no" está detrás de cada una de las opciones que comienzan con "GSS": GSSAPIAuthentication, GSSAPIDelegateCredentials, GSSAPIKeyExchange, GSSAPITrustDNS, GSSAPIAuthentication y GSSAPIDelegateCredentials? (2) ¿Cuáles son las opciones para el método de autenticación "Kerberos" que necesito dejar atrás "no"? PD: Acabo de actualizar mi publicación con el contenido de mi local /etc/ssh/ssh_config.
Tim
1
1) Modificar PreferredAuthenticationses suficiente. 2. Kerberos usa GSS; deshabilitar GSS es suficiente.
Ignacio Vazquez-Abrams
¡Gracias! ¿Puedo preguntar cómo modificar las Autenticaciones Preferidas? No puedo encontrarlo en la página de manual de ssh_config (5)
Tim
3

UseDNS noy también CheckHostIP nodebería acelerar las cosas.

También es una buena medida de seguridad permitir solo el protocolo 2. Si no necesita IPv6, desactívelo (AddressFamily).

Nils
fuente
1

¿Podría ser ssh / etc / ssh_prng_cmds? Hay un trabajo en ssh que ejecuta una serie de comandos para hacer que las cosas sean aleatorias al iniciar sesión. Uno de esos comandos probablemente esté tardando demasiado porque está haciendo algo tonto en su computadora. Lo único en lo que puedo pensar ahora es que ssh requiere que la computadora corte el árbol más grande del bosque con ......

un arenero

Así que "ejecute" algunos de estos comandos desde un indicador y descubra que uno tarda mucho en responder. Comenta ese.

clonea
fuente
1

Para mí necesitaba GSSAPI y no quería desactivar las búsquedas inversas de DNS, eso no parecía una buena idea, así que revisé la página del manual para resolverv.conf. Resulta que un firewall entre mí y los servidores a los que estaba SSH estaba interfiriendo con las solicitudes de DNS porque no estaban en una forma que el firewall esperaba. Al final, todo lo que tenía que hacer era agregar esta línea a resolv.conf en los servidores en los que estaba SSHing -

opciones single-request-reopen

Sapan Ganguly
fuente
Para cualquiera que esté investigando problemas similares, consulte también: unix.stackexchange.com/a/141278/23367
tuomassalo