¿Por qué el indicador de "contraseña" de ssh tarda tanto en aparecer?

87

Cuando intento ssh , la solicitud de contraseña tarda demasiado (casi dos minutos) en aparecer.

¿Por qué sucede esto?

    
pregunta Neuquino 22.01.2013 - 21:55

8 respuestas

135

Hay varias cosas que pueden salir mal. Añada -vvv para hacer que ssh imprima un rastro detallado de lo que está haciendo, y vea dónde está haciendo una pausa.

El problema podría estar en el cliente o en el servidor.

Un problema común en el servidor es si se está conectando desde un cliente para el que se agotó el tiempo de espera de las búsquedas DNS inversas. (Una "búsqueda DNS inversa" significa regresar de la dirección IP de la máquina cliente a un nombre de host. No es realmente útil para la seguridad, solo es ligeramente útil para diagnosticar intentos fallidos de entradas de registro, pero la configuración predeterminada lo hace de todos modos). Para desactivar las búsquedas DNS inversas, agregue UseDNS no a /etc/ssh/sshd_config (debe ser root en el servidor, recuerde reiniciar el servicio SSH luego).

Otra cosa que puede fallar es GSSAPI tiempo de espera de autenticación. Si no sabes qué es eso, probablemente no estés confiando en eso; puede desactivarlo agregando la línea GSSAPIAuthentication no a /etc/ssh/ssh_config o ~/.ssh/config (que está en el lado del cliente).

    
respondido por el Gilles 22.01.2013 - 22:15
12

Deje que transcurra el tiempo de inicio de sesión y vea cuánto tiempo llevará:

[root@gislab00207 ~]# time ssh root@ISSLABNTL01
root@isslabntl01's password:
Last login: Fri Oct  4 07:55:03 2013 from 3.60.40.232

[root@ISSLABNTL01 ~]# exit
logout
Connection to ISSLABNTL01 closed.

real    0m45.192s
user    0m0.003s
sys     0m0.005s

You have new mail in /var/spool/mail/root
[root@gislab00207 ~]#

Ver más arriba, tardó unos 45 segundos en iniciar sesión -------- MUY LENTO

Una vez que inicie sesión como root edite el archivo sshd_config y cambie la entrada UseDNS como se muestra a continuación. Aquí estoy usando sed en lugar de editar el archivo.

[root@ISSLABNTL01 ~]# grep -i dns /etc/ssh/sshd_config
#UseDNS yes

[root@ISSLABNTL01 ~]# sed -i 's/#UseDNS yes/UseDNS no/g' /etc/ssh/sshd_config
[root@ISSLABNTL01 ~]# grep -i dns /etc/ssh/sshd_config
UseDNS no

[root@ISSLABNTL01 ~]# service sshd restart
Stopping sshd:                                             [  OK  ]
Starting sshd:                                             [  OK  ]
[root@ISSLABNTL01 ~]# exit

Permítanos programar el proceso de inicio de sesión y ver ahora cuánto tiempo llevará.

[root@gislab00207 ~]# time ssh root@ISSLABNTL01
root@isslabntl01's password:
Last login: Fri Oct  4 07:55:03 2013 from 3.60.40.232

[root@ISSLABNTL01 ~]# exit
logout

Connection to ISSLABNTL01 closed.

real    0m6.192s
user    0m0.003s
sys     0m0.005s

You have new mail in /var/spool/mail/root
[root@gislab00207 ~]#

Ve que me tomó 6 segundos, el tiempo para escribir la contraseña.

    
respondido por el Mamadou Lamine Diatta 04.10.2013 - 14:39
4

Es algo que sale mal de la instalación de Ubuntu.

Para solucionarlo, debe cambiar esta línea en /etc/nsswitch.conf :

hosts:          files mdns4_minimal [NOTFOUND=return] dns mdns4

Y cámbialo por este:

hosts:          files dns
    
respondido por el Neuquino 22.01.2013 - 21:55
4

En mi caso, el problema puede resolverse reiniciando systemd-logind :

systemctl restart systemd-logind

Esto se menciona en Serverfault .

Sin embargo, tengo que hacer esto regularmente, y no sé cuál es la causa raíz del problema.

    
respondido por el Candid Dauth 22.04.2016 - 19:01
1

La salida de depuración para ssh en mi caso solo se detuvo durante 30 segundos mientras se estaba 'conectando'. La solución resultó estar relacionada con la configuración de DNS en mi sistema local. Una configuración de red anterior había dejado un servidor DNS falso en el archivo /etc/resolv.conf . Reemplazarlo con un servidor DNS actual solucionó el problema.

    
respondido por el ErikWeitenberg 25.07.2014 - 18:29
0

Para mí, cambiar los DNS del sistema a 127.0.0.1, antes de esto, era un host no existente.

nano /etc/resolv.conf

Y escribe lo siguiente

domain localdomain
search localdomain
(Removed this line) ===> nameserver 10.0.0.1
(Added this line) ===> nameserver 127.0.0.1
    
respondido por el Alireza 07.12.2013 - 06:51
0

No sé tanto sobre el entorno del póster como me gustaría, pero para otros con un problema similar, puede ser un problema con sssd , que usamos para vincular ldap mojo.

Esto me sucede a mí:

$ time ssh server.example.com

real  2m0.018s
user  0m0.006s
sys   0m0.004s

Tengo que obtener acceso al servidor (en mi caso a través de la consola) y luego hacer una:

service restart sssd

Después de eso, las cosas simplemente funcionan. No he tenido tiempo de depurar la causa raíz, pero esta tirita funciona para mí.

    
respondido por el KurtB 15.09.2014 - 20:36
0

Pude resolver la solicitud lenta de contraseña a través de ssh : problema al marcar Habilitar retransmisión DNS en la configuración de DHCP en mi enrutador dlink. Luego, las conexiones con SSH funcionaron en un segundo.

Network Settings -> Router Settings -> Enable DNS Relay [x]

La configuración predeterminada reenvía todas las solicitudes de DNS al proveedor. Fue lento aunque me estaba conectando con ssh pi@10.0.0.103. Una pista para la solución fue una entrada en /etc/resolv.conf "search upc.at" que se proporciona a través de dhcp.

El manual de dlink indica:

When DNS Relay is enabled, DHCP clients of the router will be assigned 
the router's LAN IP address as their DNS server. All DNS requests that 
the router receives will be forwarded to your ISPs DNS servers. 
When DNS relay is disabled, all DHCP clients of the router will 
be assigned the ISP's DNS server.

Después de un lanzamiento de dhcp en el cliente y el servidor, la conexión a través de SSH fue rápida nuevamente. HTH.

    
respondido por el domih 19.06.2015 - 21:11

Lea otras preguntas en las etiquetas