Jak naprawić błąd odmowy dostępu SSH (klucz publiczny)

How Resolve Ssh Permission Denied Error



Klucze SSH to świetna metoda do uwierzytelniania sesji SSH bez konieczności podawania hasła przy każdym logowaniu. Jednak, podobnie 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 katalogu .ssh i pliku autoryzowane_klucze.



Aby rozwiązać ten problem, ustaw uprawnienia do katalogu .ssh na 700, a uprawnienia Author_keys na 6oo.



sudo chmod 700~/.sshsudo chmod 600autoryzowane_klucze

Błą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:

ZezwolenieRootZalogujtak

Uwierzytelnianie hasłemtak

Zapisz konfigurację i uruchom ponownie usługę:

sudosystemctl restart sshd.service

Błą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 klucze dodane do pliku Authorized_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:

Uwierzytelnianie Pubkeytak

#PasswordUwierzytelnianie tak

Zmień na następujące wpisy:

#PubkeyAuthentication tak
Uwierzytelnianie hasłemtak

Po edycji konfiguracji zapisz plik i uruchom ponownie usługę SSH:

sudosystemctl restart sshd.service

Jeśli masz pewność, że Twoje klucze zostały naruszone, możesz je usunąć 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.