Como Resolver O Erro No Matching Key Exchange Method Found

Ao utilizar um cliente SSH mais atual (Rocky Linux 9), alguns equipamentos e sistemas passaram a apresentar uma mensagem de erro indicando problemas no reconhecimento da chave dos servidores SSH.

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

A mesma mensagem pode aparecer em outros casos tais como ssh-rsa, ecdsa-sha2-nistp256, etc.

Uma forma de contornar isso é adicionar as diretivas KexAlgoritms e HostKeyAlgorithms explicitamente no arquivo ~/.ssh/config para forçar o cliente a utilizar o tipo método correspondente.

$ cat ~/.ssh/config
Host *
  KexAlgorithms +diffie-hellman-group1-sha1
  HostKeyAlgorithms +ssh-rsa,ecdsa-sha2-nistp256
  PubkeyAcceptedKeyTypes +ssh-rsa
  Ciphers +aes128-cbc,3des-cbc,aes192-cbc,aes256-cbc

Este workaround NÃO corrige o problema, ou seja, o sistema remoto pode continuar precisando de atualizações, mas habilita o acesso para que seja possível aplicar as devidas correções.