Klucze SSH to świetna metoda do uwierzytelniania sesji SSH bez konieczności podawania hasła przy każdym logowaniu. Jednak, jak wszystkie technologie, klucze SSH nie są doskonałe i podczas ich używania mogą wystąpić błędy. Jednym z najczęstszych błędów podczas pracy z kluczami SSH jest błąd odmowy uprawnień (klucz publiczny).
W tym artykule omówimy różne przyczyny tego błędu i pokażemy szybkie kroki, które możesz podjąć, aby naprawić błąd.
Błąd 1: Autoryzowane klucze i uprawnienia do katalogu
Jedną z przyczyn tego błędu mogą być uprawnienia i własność skonfigurowane dla .katalog ssh i plik autoryzowanych_kluczy.
Aby rozwiązać ten problem, ustaw .uprawnienia do katalogu ssh do 700 i uprawnienia Author_keys do 6oo.
sudo chmod 700 ~/.ssh sudo chmod 600 autoryzowane_kluczeBłąd 2: Nieprawidłowe konfiguracje SSH
Inną częstą przyczyną błędu klucza publicznego 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 zabrania hasła#PasswordUwierzytelnianie tak
Powyższe wpisy powinny wyglądać tak, jak pokazano poniżej:
PermitRootZaloguj takUwierzytelnianie hasłem tak
Zapisz konfigurację i uruchom ponownie usługę:
sudo systemctl restart sshd.usługaBłąd 3: Brakujące klucze
Inną możliwą przyczyną błędu odmowy dostępu do klucza publicznego może być brak kluczy z komputera lokalnego. Jeśli masz swoje klucze dodane do pliku Author_keys na serwerze, ale brakuje im odpowiednich kluczy prywatnych, 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łem w następujący sposób:
PubkeyAuthentication tak#PasswordUwierzytelnianie tak
Zmień na następujące wpisy:
#PubkeyAuthentication takUwierzytelnianie hasłem tak
Po edycji konfiguracji zapisz plik i uruchom ponownie usługę SSH:
sudo systemctl restart sshd.usługaJeśli masz pewność, że Twoje klucze zostały naruszone, możesz usunąć je z author_keys lub dodać określony klucz do listy unieważnionych w SSH.
Wniosek
W tym krótkim przewodniku pokazano, jak rozwiązać różne problemy, które mogą powodować błąd odmowy uprawnień (klucz publiczny) w protokole SSH. Jeśli ten problem będzie się powtarzał, rozważ inne metody rozwiązywania problemów.