DicasLinux

RESOLVIDO Unable to negotiate with 10.0.1.71 port 22: no matching key exchange method found. Their offer: diffie-hellman-group1-sha1,diffie-hellman-group14-sha1,kexguess2@matt.ucc.asn.auErro

O OpenSSH possui todos os algoritmos criptográficos necessários para funcionar com outras implementações SSH que seguem padrões. No entanto, devido a preocupações com a segurança, alguns algoritmos mais antigos não estão ativados por padrão. Esta página explica como lidar quando o OpenSSH não se conecta a uma implementação que só suporta algoritmos mais antigos.

A melhor forma de corrigir essas falhas é atualizar o software na outra ponta e/ou trocar chaves fracas por tipos mais seguros e modernos. O OpenSSH desativa apenas os algoritmos que não recomendamos, pois são considerados fracos. Em alguns casos, pode não ser possível fazer isso imediatamente, então pode ser necessário temporariamente reativar os algoritmos fracos para manter o acesso.

Se o cliente e o servidor não conseguirem concordar sobre um conjunto comum de parâmetros, a conexão será interrompida. O OpenSSH (versão 7.0 ou superior) exibirá uma mensagem de erro semelhante a esta:

Unable to negotiate with 10.0.1.71 port 22: no matching key exchange method found. Their offer: diffie-hellman-group1-sha1,diffie-hellman-group14-sha1,kexguess2@matt.ucc.asn.auErro

No caso da mensagem de erro mencionada anteriormente, é possível configurar o OpenSSH para ativar o algoritmo de troca de chaves diffie-hellman-group1-sha1 (ou qualquer outro desativado por padrão) utilizando a opção KexAlgorithms,na linha de comando:

ssh -oKexAlgorithms=+diffie-hellman-group1-sha1 user@legacyhost

ou mais permanentemente, adicionando no arquivo ~/.ssh/config:

Host algumhost.exemplo.org
    KexAlgorithms +diffie-hellman-group1-sha1

Mais um outro exemplo ocorre quando o cliente e o servidor não conseguem concordar sobre um algoritmo de chave pública para autenticação do host:

Unable to negotiate with legacyhost: no matching host key type found. Their offer: ssh-dss

O OpenSSH 7.0 e versões posteriores desativam da mesma forma o algoritmo de chave pública ssh-dss (DSA), pois também é considerado fraco, e desencorajamos o seu uso. É possível reativá-lo utilizando a opção de configuração HostKeyAlgorithms:

ssh -oHostKeyAlgorithms=+ssh-dss usuario@hostlegado

ou mais permanentemente, adicionando no arquivo ~/.ssh/config:

Host algumhost.exemplo.org
    HostKeyAlgorithms +ssh-dss

Dependendo da configuração do servidor, outros parâmetros de conexão podem não ser negociados com sucesso. Você pode achar úteis as opções de configuração Ciphers e/ou MACs para habilitar esses parâmetros. Também é possível verificar quais algoritmos o SSH suporta.

 ssh -Q cipher # Lista as cifras suportadas

 ssh -Q mac # Lista MACs suportados

 ssh -Q key # Lista os tipos de chave pública suportados

 ssh -Q kex # Lista algoritmos de troca de chaves suportados

Para Debugar melhor os problemas também é possível consultar a configuração que o ssh está realmente usando ao tentar se conectar a um host específico, usando a opção -G:

ssh -G usuario@algumhost.exemplo.com

que listará todas as opções de configuração, incluindo os valores escolhidos para os parâmetros Ciphers,MACs,HostKeyAlgorithms e KexAlgorithms.

One thought on “RESOLVIDO Unable to negotiate with 10.0.1.71 port 22: no matching key exchange method found. Their offer: diffie-hellman-group1-sha1,diffie-hellman-group14-sha1,kexguess2@matt.ucc.asn.auErro

  • Navigating the AI landscape just got easier with platforms like tyy.AI Tools. Their curated list of over 500+ tools is a goldmine for professionals. Check out their AI Chat tools for real-time insights!

    Resposta

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

YouTube
YouTube
Facebook
Facebook