¿Cómo habilitar el intercambio de claves diffie-hellman-group1-sha1 en Debian 8.0?


66

No puedo enviar ssh a un servidor que solicita un diffie-hellman-group1-sha1método de intercambio de claves:

ssh 123.123.123.123
Unable to negotiate with 123.123.123.123 port 22: no matching key exchange method found. Their offer: diffie-hellman-group1-sha1

¿Cómo habilitar el diffie-hellman-group1-sha1método de intercambio de claves en Debian 8.0?

He intentado (como se propone aquí )

  1. agregue las siguientes líneas a mi /etc/ssh/ssh_config

    KexAlgorithms diffie-hellman-group1-sha1,curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group14-sha1
    Ciphers 3des-cbc,blowfish-cbc,aes128-cbc,aes128-ctr,aes256-ctr
    
  2. regenerar claves con

    ssh-keygen -A
    
  3. reiniciar ssh con

    service ssh restart
    

    pero aun así recibo el error.


Me pasa lo mismo con Debian 9.
Rui F Ribeiro

Prueba this diffie-hellman-group-exchange-sha256
Miguel

Respuestas:


94

El sitio web de OpenSSH tiene una página dedicada a problemas heredados como este. Sugiere el siguiente enfoque, en el cliente :

ssh -oKexAlgorithms=+diffie-hellman-group1-sha1 123.123.123.123

o más permanentemente, agregando

Host 123.123.123.123
    KexAlgorithms +diffie-hellman-group1-sha1

a ~/.ssh/config.

Esto habilitará los algoritmos antiguos en el cliente , lo que le permitirá conectarse al servidor.


También me enfrenté a este problema hoy, pero eso se debió a la red. Cambié la red y el problema desapareció
Luv33preet

Intenté arriba, pero obtuveUnable to negotiate with 192.168.1.123 port 22222: no matching cipher found. Their offer: aes128-cbc,3des-cbc,aes256-cbc,twofish256-cbc,twofish-cbc,twofish128-cbc,blowfish-cbc
typelogic

@ifelsemonkey es un problema diferente, tenga en cuenta que la oferta que recibe no es la misma que la de la pregunta.
Stephen Kitt

3
Confirmado que era un problema diferente. Pude resolverlo agregando la siguiente entrada en mi ~/.ssh/configarchivo. Host 192.168.1.123y debajo de ella Ciphers aes128-ctr,aes192-ctr,aes256-ctr,aes128-cbc,3des-cbc.
typelogic el

19

Probé esta solución, pero mi problema era que tenía muchos clientes (heredados) que se conectaban a mi servidor recientemente actualizado (ubuntu 14 -> ubuntu 16).

El cambio de openssh6 -> openssh7 deshabilitó por defecto el diffie-hellman-group1-sha1método de intercambio de claves.

Después de leer esto y esto, se me ocurrieron los cambios que tenía que hacer en el /etc/ssh/sshd_configarchivo:

#Legacy changes
KexAlgorithms +diffie-hellman-group1-sha1
Ciphers +aes128-cbc

Pero un conjunto de cambios heredados más amplio es (tomado de aquí )

#Legacy changes
KexAlgorithms diffie-hellman-group1-sha1,curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group14-sha1
Ciphers 3des-cbc,blowfish-cbc,aes128-cbc,aes128-ctr,aes256-ctr

44
Con suerte, podrá actualizar a sus clientes en algún momento, los algoritmos heredados se deshabilitaron por muy buenas razones y no deberían volver a habilitarse a la ligera (probablemente se dé cuenta de eso, solo pensé que valía la pena señalarlo para otros lectores).
Stephen Kitt

1
Esto funciona en el lado del servidor (a diferencia de la respuesta muy similar, aceptado que se centró en el lado del cliente.)
KNB

Estoy tratando de usar lo mismo para habilitar las claves antiguas. pero como soy un novato, realmente no sé qué IP colocar cuando escribo ssh -oKexAlgorithms = + diffie-hellman-group1-sha1 123.123.123.123
Yousi

Para agregar para que las personas futuras puedan encontrar, me estaba conectando a través de SSH desde una Mac con OpenSSH_7.9p1 a un conmutador Cisco 3750 en ejecución: Cisco IOS Software, C3750 Software (C3750-IPSERVICESK9-M), Versión 12.2 (55) SE12, RELEASE SOFTWARE (fc2). Agregué lo siguiente a la configuración del cliente y pude ingresar: KexAlgorithms + diffie-hellman-group1-sha1 Ciphers + aes128-cbc
DYoung
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.