Klawisze SSH to świetna metoda do uwierzytelniania sesji SSH bez potrzeby hasła przy każdym logowaniu. Jednak, podobnie jak wszystkie technologie, klucze SSH nie są idealne i możesz napotykać błędy podczas ich używania. Jednym z najczęstszych błędów podczas pracy z klawiszami SSH jest błąd odmowy (publickey).
W tym artykule omówiono różne przyczyny tego błędu i pokaże szybkie kroki, które możesz podjąć, aby naprawić błąd.
Błąd 1: Upoważnione klucze i uprawnienia do katalogu
Jedną z przyczyn tego błędu mogą być uprawnienia i własność skonfigurowane dla .Katalog SSH i autoryzowany plik_keys.
Aby rozwiązać ten problem, ustaw .Uprawnienia do katalogu SSH do 700 i uprawnień autoryzowanych_keysów do 6oo.
sudo chmod 700 ~/.ssh sudo chmod 600 autoryzowane_keys
Błąd 2: Niepoprawne konfiguracje SSH
Inną powszechną przyczyną błędu publickey jest nieprawidłowa konfiguracja w pliku SSHD_CONFIG. Aby rozwiązać ten problem, edytuj plik/etc/ssh/sshd_config i zmień następujące wpisy.
#Permitrootlogin zakaz słowa
#PassWordAuthentication Tak
Powyższe wpisy powinny być jak pokazano poniżej:
Pertrootlogin Tak
HasłoAuthentication Tak
Zapisz konfigurację i uruchom ponownie usługę:
sudo systemctl restart sshd.praca
Błąd 3: brakujące klucze
Kolejną możliwą przyczyną uprawnienia publicznego odrzuconego błędu może brakować kluczy z komputera lokalnego. Jeśli masz dodane klucze do pliku autoryzowanego_keys serwera, ale brakuje mu odpowiednich prywatnych kluczy, może to spowodować błąd.
Aby rozwiązać ten problem, edytuj plik konfiguracyjny SSH, wyłącz uwierzytelnianie klucza publicznego i włącz logowanie hasła, w następujący sposób:
Pubkeyauthentication Tak
#PassWordAuthentication Tak
Zmień na następujące wpisy:
#Pubkeyauthentication Tak
HasłoAuthentication Tak
Po edycji konfiguracji zapisz plik i uruchom ponownie usługę SSH:
sudo systemctl restart sshd.praca
Jeśli masz pewność, że Twoje klucze zostały naruszone, możesz je usunąć z autoryzowanych_keys.
Wniosek
Ten szybki przewodnik pokazał, jak rozwiązać różne problemy, które mogą spowodować błąd odmowy pozwolenia (publickey) w SSH. Jeśli ten problem będzie się utrzymywał, rozważ inne metody rozwiązywania problemów.