SSH – no matching key exchange method found

  • Konrad Kowalski
  • 18/05/2020
  • Linux
  • 1 komentarz
OpenSSH

Nawiązując połączenia SSH ze starszymi urządzeniami można często napotkać na komunikat „no matching key exchange method found„. Problemem spowodowany jest używaniem przez starsze/niezaktualizowane urządzenia przestarzałych algorytmów szyfrowania.

Najprostszym rozwiązaniem problemu jest aktualizacja problematycznego urządzenia. Jednakże nie zawsze jest to możliwe. Aby nawiązać połączenie z wykorzystaniem algorytmów uznanych za przestarzałe należy skorzystać z opcji -oKexAlgorithms

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

W przykładzie urządzenie używa algorytmu diffie-hellman-group1-sha1

Do nawiązania połączenia należy użyć poniższego polecenia:

ssh -oKexAlgorithms=+diffie-hellman-group14-sha1 192.168.1.234

Innym rozwiązaniem jest modyfikacja pliku /etc/ssh/ssh_config poprzez dodanie do listy brakujących algorytmów w opcji KexAlgorithms

Host *
#   ForwardAgent no
#   ForwardX11 no
....
KexAlgorithms diffie-hellman-group14-sha1
....

1 komentarz

Możesz dodawać komentarze do tego artykułu.


  • Miałem raz z tym problem, ale szybki stackoverflow pomógł, bardzo podobne rozwiązania jak u Ciebie, ale nie pamiętam w 100 %:)

    Łukasz 12 miesięcy temu Odpowiedz


Dodaj komentarz