SSH: „Berechtigungen 0644 für ‚my_key.pub‘ sind zu offen.“

SSH: „Berechtigungen 0644 für ‚my_key.pub‘ sind zu offen.“

Warum ist 0644der IE -rw-r--r--zu offen für einen SSH-Schlüssel? Auch konnte ich keine falschen Berechtigungen für das .sshVerzeichnis ( 0700) oder das Home-Verzeichnis ( 0731) finden.

Übrigens erhalte ich diesen Fehler beim Testen der Paraphrase eines Schlüssels überssh-keygen -y -f my_key.pub

Beste grüße

Antwort1

Möglicherweise führen Sie ssh-keygen auf der falschen Datei aus. ssh-keygen -yarbeitet auf einerPrivatSchlüsseldatei. ".pub"-Dateien enthalten normalerweise dieöffentlichSchlüssel. Sie haben dort wahrscheinlich eine Datei mit dem Namen my_keyohne Erweiterung und sie sollte den Modus 0600 haben. Das ist die Datei, die den privaten Schlüssel enthalten sollte.

Um Ihre Frage direkt zu beantworten: SSH-Schlüssel werden normalerweise verwendet, um eine Verbindung zu Remote-Servern ohne Kennwort herzustellen. Der Besitz des privaten Schlüssels würde es jemandem ermöglichen, sich auf jedem System, das den Schlüssel akzeptiert, in Ihr Konto einzuloggen. ssh-keygen und die anderen SSH-Dienstprogramme erfordern für private Schlüsseldateien eingeschränkte Berechtigungen, da die Dateien vertraulich sind und geschützt bleiben müssen.

Antwort2

Der einzige Befehl, den Sie ausführen müssen, ist chmod 600 ~/.ssh/id_rsa. Das ist alles.

Dadurch werden die Berechtigungen für die Datei geändert, sodass der Eigentümer (Sie) sie lesen und schreiben kann. Dadurch wird die Fehlermeldung, die Sie erhalten, entfernt.

Antwort3

0644Es sollte nicht zu offen für einen öffentlichen Schlüssel sein, ist aber zu offen für Ihren privaten Schlüssel.

Ihr privater Schlüssel sollte über die Berechtigung verfügen, 0600während Ihr öffentlicher Schlüssel über die Berechtigung verfügt 0644.

Übrigens sollten Sie auch auf die Berechtigung des .sshOrdners achten. Er sollte die Berechtigung haben 0700, damit nur Sie als Eigentümer die Kontrolle über den Ordner haben.

Für Ihr Home-Verzeichnis sollte der Gruppe und anderen keine Schreibberechtigung erteilt werden.

Ausführen chmod go-w /home/usernamesollte das Problem beheben.

Antwort4

Die obigen Antworten sind gültig, aber bevor Sie eine ausführen, chmodum die Berechtigungen zu korrigieren, stellen Sie sicher, dass sich Ihre IdentityFile(s) ~/.ssh/configauf Ihren privaten Schlüssel beziehen. Anfänger könnten das missverstehen und .pubstattdessen auf den öffentlichen Schlüssel (mit Erweiterung) verweisen, was zu demselben Fehler führt (da die Dateiberechtigungen des öffentlichen Schlüssels für einen privaten Schlüssel zu offen sind).

verwandte Informationen