Jak włączyć wymianę kluczy diffie-hellman-group1-sha1 w Debianie 8.0?


65

Nie mogę połączyć się z serwerem, który prosi o diffie-hellman-group1-sha1metodę wymiany kluczy:

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

Jak włączyć diffie-hellman-group1-sha1metodę wymiany kluczy w Debianie 8.0?

Próbowałem (jak tutaj zaproponowano )

  1. dodaj następujące wiersze do mojego /etc/ssh/ssh_config

    KexAlgorithms diffie-hellman-group1-sha1,curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group14-sha1
    Ciphers 3des-cbc,blowfish-cbc,aes128-cbc,aes128-ctr,aes256-ctr
    
  2. ponownie wygeneruj klucze za pomocą

    ssh-keygen -A
    
  3. uruchom ponownie ssh za pomocą

    service ssh restart
    

    ale nadal pojawia się błąd.


To samo dzieje się ze mną z Debianem 9.
— Rui F Ribeiro,

Spróbuj tego diffie-hellman-group-exchange-sha256
— Miguel

Odpowiedzi:


92

Witryna OpenSSH ma stronę poświęconą starszym zagadnieniom, takim jak ta. Sugeruje następujące podejście na kliencie :

ssh -oKexAlgorithms=+diffie-hellman-group1-sha1 123.123.123.123

lub bardziej trwale, dodając

Host 123.123.123.123
    KexAlgorithms +diffie-hellman-group1-sha1

do ~/.ssh/config.

Umożliwi to użycie starych algorytmów na kliencie , umożliwiając mu połączenie z serwerem.


Też miałem dzisiaj do czynienia z tym problemem, ale było to spowodowane siecią. Zmieniłem sieć i problem zniknął
— Luv33preet

Próbowałem powyżej, ale dostałemUnable to negotiate with 192.168.1.123 port 22222: no matching cipher found. Their offer: aes128-cbc,3des-cbc,aes256-cbc,twofish256-cbc,twofish-cbc,twofish128-cbc,blowfish-cbc
— typelogic

@ifelsemonkey to inny problem, pamiętaj, że otrzymana oferta nie jest taka sama jak w pytaniu.
— Stephen Kitt

2
Potwierdził, że to inny problem. Udało mi się to rozwiązać, dodając następujący wpis do mojego ~/.ssh/configpliku. Host 192.168.1.123i pod nim Ciphers aes128-ctr,aes192-ctr,aes256-ctr,aes128-cbc,3des-cbc.
— typelogic

17

Wypróbowałem to rozwiązanie, ale moim problemem było to, że miałem wielu (starszych) klientów łączących się z moim niedawno zaktualizowanym serwerem (ubuntu 14 -> ubuntu 16).

Zmiana z openssh6 -> openssh7 domyślnie wyłączona diffie-hellman-group1-sha1metoda wymiany kluczy.

Po przeczytaniu tego i tego wymyśliłem zmiany, które musiałem zrobić w /etc/ssh/sshd_configpliku:

#Legacy changes
KexAlgorithms +diffie-hellman-group1-sha1
Ciphers +aes128-cbc

Ale bardziej obszerny zestaw zmian jest (wzięty stąd )

#Legacy changes
KexAlgorithms diffie-hellman-group1-sha1,curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group14-sha1
Ciphers 3des-cbc,blowfish-cbc,aes128-cbc,aes128-ctr,aes256-ctr

4
Mam nadzieję, że w pewnym momencie będziesz w stanie zaktualizować swoich klientów, starsze algorytmy zostały wyłączone z bardzo dobrych powodów i nie powinny być ponownie włączane lekko (prawdopodobnie zdajesz sobie sprawę, pomyślałem, że warto zwrócić uwagę innym czytelnikom).
— Stephen Kitt

1
Działa to po stronie serwera (w przeciwieństwie do bardzo podobnej, akceptowanej odpowiedzi, która koncentrowała się po stronie klienta).
— kn

próbuję użyć tego samego, aby włączyć stare klucze. ale ponieważ jestem nowicjuszem, tak naprawdę nie wiem, jaki adres IP umieścić, gdy piszę ssh -oKexAl algorytmy = + diffie-hellman-group1-sha1 123.123.123.123
— Yousi

Aby dodać, aby przyszli ludzie mogli je znaleźć, łączyłem się przez SSH z komputerem Mac z OpenSSH_7.9p1 do przełącznika Cisco 3750 z oprogramowaniem: Cisco IOS Software, C3750 Software (C3750-IPSERVICESK9-M), wersja 12.2 (55) SE12, OPROGRAMOWANIE RELEASE (fc2). Dodałem następujące ustawienia do konfiguracji klienta i mogłem ssh w: KexAl algorytmy + diffie-hellman-group1-sha1 Ciphers + aes128-
— cbc
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.