Aby poprawić odpowiedź tumbleweed, która zawiera martwy link do znalezienia starej listy algorytmów.
Najpierw zdecyduj o liście algorytmów. Aby znaleźć starą listę, użyj ssh -vv
:
ssh -vv somehost
I poszukaj 2 wierszy, takich jak „algorytmy klucza hosta: ...”, gdzie pierwsza wydaje się być ofertą serwera, a druga jest ofertą klienta. Lub, aby automatycznie wybrać te 2 linie, spróbuj tego (i aby wyjść, naciśnij Ctrl + D):
ssh -vv somehost 2>&1 | grep "host key algorithms:"
Teraz odfiltruj to ... powinieneś usunąć wszystkie dss / dsa, ponieważ są one już przestarzałe, a także chciałeś usunąć ecdsa (tak jak ja), więc na przykład, jeśli:
ecdsa-sha2-nistp256-cert-v01@openssh.com,ecdsa-sha2-nistp384-cert-v01@openssh.com,ecdsa-sha2-nistp521-cert-v01@openssh.com,ssh-ed25519-cert-v01@openssh.com,ssh-rsa-cert-v01@openssh.com,ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,ssh-ed25519,rsa-sha2-512,rsa-sha2-256,ssh-rsa
Powinieneś skończyć z:
ssh-ed25519-cert-v01@openssh.com,ssh-rsa-cert-v01@openssh.com,ssh-ed25519,rsa-sha2-512,rsa-sha2-256,ssh-rsa
Teraz edytuj konfigurację. Dla własnej konfiguracji:
vim ~/.ssh/config
W przypadku konfiguracji ogólnosystemowej:
sudo vim /etc/ssh/ssh_config
Dodaj nową linię globalnie:
HostKeyAlgorithms ssh-ed25519-cert-v01@openssh.com,ssh-rsa-cert-v01@openssh.com,ssh-ed25519,rsa-sha2-512,rsa-sha2-256,ssh-rsa
lub dla konkretnego hosta (nie idealny do konfiguracji całego serwera):
Host somehost
HostKeyAlgorithms ssh-ed25519-cert-v01@openssh.com,ssh-rsa-cert-v01@openssh.com,ssh-ed25519,rsa-sha2-512,rsa-sha2-256,ssh-rsa
Zamiast listy, którą ssh -vv
wpisałem , wklej listę uzyskaną z danych wyjściowych, nie włączając części „algorytmy klucza hosta:”.