Warum ist 0644
der IE -rw-r--r--
zu offen für einen SSH-Schlüssel? Auch konnte ich keine falschen Berechtigungen für das .ssh
Verzeichnis ( 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 -y
arbeitet auf einerPrivatSchlüsseldatei. ".pub"-Dateien enthalten normalerweise dieöffentlichSchlüssel. Sie haben dort wahrscheinlich eine Datei mit dem Namen my_key
ohne 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
0644
Es 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, 0600
während Ihr öffentlicher Schlüssel über die Berechtigung verfügt 0644
.
Übrigens sollten Sie auch auf die Berechtigung des .ssh
Ordners 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/username
sollte das Problem beheben.
Antwort4
Die obigen Antworten sind gültig, aber bevor Sie eine ausführen, chmod
um die Berechtigungen zu korrigieren, stellen Sie sicher, dass sich Ihre IdentityFile
(s) ~/.ssh/config
auf Ihren privaten Schlüssel beziehen. Anfänger könnten das missverstehen und .pub
stattdessen 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).