SSH – no matching key exchange method found

Avatar photo
  • Konrad Kowalski
  • 18/05/2020
  • Linux
  • 2 komentarze
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-group14-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
....

Warto przeczytać

2 komentarze

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 4 lata ago Reply


  • Dzięki pomogłeś.

    pavo 3 lata ago Reply


Dodaj komentarz