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
....
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
Dzięki pomogłeś.
pavo 3 lata ago
Dodaj komentarz