Die Berechtigungen 0777 für 'id_key' sind zu offen

11

Ich behalte eine private SSH-Schlüsseldatei auf einem separaten USB-Stick (verschlüsselt), aber wenn ich versuche, damit eine Verbindung zu meinem Remote-Host herzustellen, wird folgende Fehlermeldung angezeigt:

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@         WARNING: UNPROTECTED PRIVATE KEY FILE!          @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0777 for '/Volumes/USB/id_rsa' are too open.
It is recommended that your private key files are NOT accessible by others.
This private key will be ignored.
bad permissions: ignore key: /Volumes/USB/id_rsa
Permission denied (publickey).

Ich habe versucht, die Berechtigungen für die Schlüsseldatei (chmod 600 id_rsa) zu ändern, aber es scheint immer noch auf 777 gesetzt zu sein (Änderung wird nicht wirksam). Dies ist unter Mac OS X.

Irgendeine Idee, wie man das behebt?

Trent Scott
quelle

Antworten:

6

Welche Art von Dateisystem haben Sie auf Ihrem USB-Stick? Wenn es sich um eines der FAT-Dateisysteme FAT8, FAT16, VFAT, FAT32 handelt, haben Sie wahrscheinlich kein Glück, da dort keine Felder zum Speichern von Berechtigungsbits im Unix-Stil vorhanden sind. (Der UMSDOS-Dateisystemtreiber für Linux hackt dies zwar, aber ich bezweifle, dass OS X etwas Hackiges zur Verfügung hat. :)

Wenn es sich um NTFS oder NTFS2 handelt, kann möglicherweise eine Zuordnung vorgenommen werden, aber ich würde mich nicht darauf verlassen.

Wenn es sich um HFS + oder UFS handelt, sind definitiv mehr Details erforderlich, da es wie beschrieben funktionieren sollte, aber Symlinks könnten im Weg stehen.

Sarnold
quelle
4
Gibt es eine Möglichkeit, SSH anzuweisen, das Berechtigungsproblem einfach zu ignorieren? Oder ist das hart darin codiert?
Hengjie
5

Dies ist ein Berechtigungsproblem auf einem Mac. Das Dateisystem ist HFS +, daher ist der erste Kommentar bei weitem falsch. Berechtigungen sind die grundlegende Grundlage des * nix-Betriebssystems. Sie sollten es also verstehen.

$ chmod 600 /Volumes/USB/id_rsa
MooseQuest
quelle
Habe einen Schlüssel von Windows. Dies hat mein Problem unter Linux behoben.
Aloisdg wechselt zu codidact.com
0

Ihr Flash-Laufwerk ist wahrscheinlich auf FAT32 vorformatiert, das keine Unix-Berechtigungen unterstützt. Formatieren Sie Ihr Flash-Laufwerk in ein besseres Dateisystem (HFS + fällt Ihnen ein, da Sie auf einem Mac arbeiten).

Amadan
quelle
0

Ich denke chmod 600 /Volumes/USB/id_rsaist ausreichend.

Dzung
quelle
0

Ich hatte die gleichen Probleme, die ich so gemacht hatte, um mein Problem zu lösen.

Hier ist die Lösung ::

Lösung: Fügen Sie den richtigen Hostschlüssel in /home/user/.ssh/known_hosts hinzu

Es ist nicht erforderlich, die gesamte Datei "unknown_hosts" zu löschen, sondern nur die fehlerhafte Zeile in dieser Datei. Zum Beispiel, wenn Sie 3 Server wie folgt haben.

myserver1.com,64.2.5.111 ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAIEA11FV0EnGahT2EK8qElocjuHTsu1jaCfxkyIgBTlxlrOIRchb2pw8IzJLOs2bcuYYfa8nSXGEcWyaFD1ifUjfHelj94AAAAB3NzaC1yc2EAAAABIwAAAIEA11FV0E
nGahT2EK8qElocjuHTsu1jaCfxkyIgBTlxlrOIRchb2pw8IzJLOs2bcuYYfa8nSXGEcWyaFD1ifUjfHelj94H+uv304/ZDz6xZb9ZWsdm+264qReImZzruAKxnwTo4dcHkgKXKHeefnBKyEvvp/2ExMV9WT5DVe1viVwk=
myserver2.com,125.1.12.5 ssh-rsa
AAAAB3NzaC1yc2EAAAABIwAAAQEAtDiERucsZzJGx/1kUNIOYhJbczbZHN2Z1gCnTjvO/0mO2R6KiQUP4hOdLppIUc9GNvlp1kGc3w7B9tREH6kghXFiBjrIn6VzUO4uwrnsMbnAnscD5EktgI7fG4ZcNUP 5+J7sa3o+rtmOuiFxCA690DXUJ8nX8yDHaJfzMUTKTGxQz4M/H2P8L2R//qLj5s3ofzNmgSM9lSEhZL/IyI4NxHhhpltYZKW/Qz4M/H2P8L2R//qLj5s3ofzNmgSM9lSEhZL/M7L0vKeTObue1SgAsXADtK3162a/Z6MGnAazIviHBldxtGrFwvEnk82+GznkO3IBZt5vOK2heBnqQBfw=
myserver3.com,125.2.1.15 ssh-rsa 
5+J7sa3o+rtmOuiFxCA690DXUJ8nX8yDHaJfzMUTKTGx0lVkphVsvYD5hJzm0eKHv+oUXRT9v+QMIL+um/IyI4NxHhhpltYZKW
as3533dka//sd33433////44632Z6MGnAazIviHBldxtGrFwvEnk82/Qz4M/H2P8L2R//qLj5s3ofzNmgSM9lSEhZL/M7L0vKeTObue1SgAsXADtK3162a/Z6MGnAazIviHBldxtGrFwvEnk82+GznkO3IBZt5vOK2heBnqQBfw==

Öffnen Sie die Datei, um den 2. Server (myserver.com) zu löschen:

# vi +2 .ssh/known_hosts

Und drücken Sie den Befehl dd, um die Zeile zu löschen. Speichern und schließen Sie die Datei. Oder verwenden Sie Folgendes

$ vi ~/.ssh/known_hosts

Gehen Sie nun zu Zeile 2 und geben Sie den folgenden Befehl ein

:2

Löschen Sie nun die Zeile mit dd und beenden Sie:

dd
:wq

Schauen Sie sich dieses vollständige Video-Tutorial an, das auf Ihrem Problem basiert:

Fehler beim Ändern des SSH-Hostschlüssels

Govind Karamta
quelle