So beheben Sie den Fehler SSH-Berechtigung verweigert (publickey)

How Resolve Ssh Permission Denied Error



SSH-Schlüssel sind eine großartige Methode, um SSH-Sitzungen zu authentifizieren, ohne dass bei jeder Anmeldung ein Kennwort erforderlich ist. Wie alle Technologien sind SSH-Schlüssel jedoch nicht perfekt, und bei der Verwendung können Fehler auftreten. Einer der häufigsten Fehler beim Arbeiten mit SSH-Schlüsseln ist der Berechtigungsverweigerungsfehler (publickey).

In diesem Artikel werden die verschiedenen Gründe für diesen Fehler erläutert und die schnellen Schritte gezeigt, die Sie ausführen können, um den Fehler zu beheben.







Fehler 1: Autorisierte Schlüssel und Verzeichnisberechtigungen

Eine der Ursachen für diesen Fehler können die Berechtigungen und der Besitz sein, die für das .ssh-Verzeichnis und die Datei 'authorized_keys' konfiguriert sind.



Um dieses Problem zu beheben, legen Sie die Berechtigungen für das .ssh-Verzeichnis auf 700 und die Berechtigungen für authorisierte_Schlüssel auf 6oo fest.



sudo chmod 700~/.sshsudo chmod 600authorisierte_keys

Fehler 2: Falsche SSH-Konfigurationen

Eine weitere häufige Ursache für den Publickey-Fehler ist eine falsche Konfiguration in der Datei sshd_config. Um dieses Problem zu beheben, bearbeiten Sie die Datei /etc/ssh/sshd_config und ändern Sie die folgenden Einträge.

#PermitRootLogin Verbots-Passwort
#PasswortAuthentifizierung ja

Die obigen Einträge sollten wie folgt aussehen:

PermitRootLoginJawohl

PasswortAuthentifizierungJawohl

Speichern Sie die Konfiguration und starten Sie den Dienst neu:

sudosystemctl Neustart sshd.service

Fehler 3: Fehlende Schlüssel

Eine weitere mögliche Ursache für den Fehler 'Publickey-Berechtigung verweigert' können fehlende Schlüssel von Ihrem lokalen Computer sein. Wenn Sie Ihre Schlüssel zur Datei 'authorized_keys' des Servers hinzugefügt haben, aber die entsprechenden privaten Schlüssel fehlen, kann dies zu einem Fehler führen.

Um dieses Problem zu beheben, bearbeiten Sie die ssh-Konfigurationsdatei, deaktivieren Sie die Authentifizierung mit öffentlichem Schlüssel und aktivieren Sie die Kennwortanmeldung wie folgt:

PubkeyAuthentifizierungJawohl

#PasswortAuthentifizierung ja

Wechseln Sie zu folgenden Einträgen:

#PubkeyAuthentifizierung ja
PasswortAuthentifizierungJawohl

Nachdem Sie die Konfiguration bearbeitet haben, speichern Sie die Datei und starten Sie den SSH-Dienst neu:

sudosystemctl Neustart sshd.service

Wenn Sie sicher sind, dass Ihre Schlüssel kompromittiert wurden, können Sie sie aus authorised_keys entfernen oder einen bestimmten Schlüssel zur Sperrliste in SSH hinzufügen.

Abschluss

In dieser Kurzanleitung wurde gezeigt, wie Sie verschiedene Probleme beheben können, die den Fehler 'Berechtigung verweigert (publickey)' in SSH verursachen können. Wenn dieses Problem weiterhin besteht, ziehen Sie andere Methoden zur Fehlerbehebung in Betracht.