Corregido: no se encontró el método de intercambio de claves coincidentes

Cuando intente usar ssh para conectarse a un servidor remoto, es posible que obtenga un error que indica que no se recibió ningún método de intercambio de claves coincidente antes de darle una sugerencia sobre qué algoritmo de cifrado desea usar. No podrá conectarse al servidor remoto siempre que tenga el error. Este proceso puede ser muy frustrante, pero el error es tan común que a menudo se encuentran tipos de Unix hablando de cómo están sufriendo y dando el mismo consejo para salir del peligro.

Los siguientes métodos han sido probados para corregir el error en todo lo que funciona ssh, pero lo más probable es que encuentre este problema en sistemas Unix y Linux. Debería poder usar el mismo proceso para corregirlo si está ejecutando ssh en Windows o algo exótico, pero puede encontrar que las opciones de cambio son un poco diferentes.

Método 1: vuelva a conectar el servidor y vuelva a generar las claves

Antes de hacer cualquier otra cosa, asegúrese de poder reproducir el error. A veces, este mensaje de error se debe simplemente a que hay algún servicio remoto que no se está ejecutando actualmente, lo que puede corregirse mientras tanto. Cuando ejecutamos ssh en una máquina virtual que permitió la conexión a una dirección de servidor falsa configurada en sample.org que está permitida por la documentación, pero querrá reemplazarla con una dirección de red real.

Si aún lo encuentra, intente regenerar claves con ssh-keygen -A desde el símbolo del sistema. Esto actualizará la caché que usa la aplicación ssh para conectarse al servidor remoto. Pero para evitar eso, puede intentar reiniciar ssh ejecutando reiniciar el servicio ssh y dale unos minutos.

Si aún tiene problemas, significa que el servidor y el cliente nunca pudieron encontrar el protocolo correcto para usar. OpenSSH implementa una serie vertiginosa de diferentes protocolos, pero deshabilita algunos de ellos porque ahora se sabe que están comprometidos y, por lo tanto, no son seguros. Querrá actualizar todos los paquetes ssh en el extremo del servidor de la ecuación, así que asegúrese de que el administrador del sistema esté al tanto de lo que está sucediendo. Si es su propio servidor, tómese un minuto para actualizarlos.

Si esta no es una opción y reconoce los peligros de usar algoritmos de compromiso, entonces existe una forma del lado del cliente para evitar este mensaje de error.

Método 2: habilitar opciones heredadas en OpenSSH

Mire lo que dice el mensaje de error después de las palabras Una oferta: vea qué algoritmo prefiere el servidor remoto. Si bien la mayoría de los sistemas deberían usar openssh7, que ya ha desactivado la tecnología Disable diffie-hellman-group1-sha1, se le pedirá que use sha1 si todavía están bloqueados en openssh6 o algo así.

Correr ssh -oKexAlgorithms = + diffie-hellman-group1-sha1 testhost@example.org no importa cuál sea el host de red real o la dirección IP del servidor remoto que esté solucionando este problema en el lado del cliente. Si esto soluciona el problema, entonces estaba buscando un protocolo basado en sha1 más antiguo para conectarse. Esta solución anterior basada en sha1 se ha desactivado por una buena razón, pero puede omitirla de forma más permanente utilizando los editores nano o vim para abrir el archivo ~ / .ssh / config y agregar las líneas:

Host example.org

KexAlgorithms + diffie-hellman-group1-sha1

Tenga en cuenta que desea asegurarse de que el signo más esté presente, ya que significará el apéndice ssh en lugar de los valores predeterminados más seguros. Cuando el servidor actualice los paquetes, utilizará los protocolos más seguros en la mayoría de los casos.

Si recibió un error anterior al mencionar el protocolo ssh-dss en lugar de la versión sha1, puede probar este comando seguido de su nombre de host: ssh -oHostKeyAlgorithms = + ssh-dss, si funciona, deberá editar el archivo ~ / .ssh / config nuevamente. Después de la línea Host, agregue una pestaña y lo siguiente:

HostKeyAlgorithms + ssh-dss

Recuerde, al igual que el sistema sha1, la clave ssh-dss fue obsoleta debido a problemas de seguridad muy razonables asociados con ella. El uso de esto puede introducir vulnerabilidades en su conexión, por lo que solo debe verse como una solución temporal si vale la pena. Asegúrese de actualizar el servidor lo antes posible.

Deja un comentario