SSH lehnt Schlüsseldatei mit erweiterten Attributen ab

1

In meinem .ssh / -Verzeichnis, wenn ausgeführt

$ ssh-add dev 
Permissions 0755 for 'dev' are too open.

Aber schaut euch die Dev-Datei an

$ ls -lF dev
-rw-------@ 1 me  staff  1675 Feb  3 09:37 dev

Das @ am Ende bedeutet, dass erweiterte Attribute vorhanden sind. Also renne ich dann

$ xattr dev
com.apple.metadata:kMDItemWhereFroms
com.apple.quarantine

Diese haben für mich keine Bedeutung. Es scheint mir, dass die Berechtigungen so sind, wie sie sein sollten (600), woher kommt die Diskrepanz und wie behebe ich sie?

scott m gardner
quelle
Diese erweiterten Attribute werden normalerweise angehängt, wenn Sie die Datei mit Safari, Chrome oder einem Download-Manager aus dem Internet herunterladen. Ich finde es merkwürdig, warum Sie einen privaten Schlüssel aus dem Internet herunterladen, wenn dies tatsächlich der Fall ist.
Siyuan Ren
Der Schlüssel kam über Skype von einem anderen Benutzer.
Scott M Gardner

Antworten:

0

Ich nehme an, Ihr Arbeitsverzeichnis ist, ~/.ssh/wenn Sie ausführen ssh-add, lsund xattr.

Ich vermute, es gibt ein Unterverzeichnis mit dem Namen dev(dh ~/.ssh/dev/). Überprüfen Sie es mit ls -lFd dev.

lsListet normalerweise den Inhalt eines Verzeichnisses auf. Durch Hinzufügen der -dOption wird ein Verzeichnis als ein Verzeichnis selbst aufgelistet .

Außerdem vermute ich, dass es eine Datei gibt, über ~/.ssh/dev/devdie ls -lFdie Informationen angezeigt werden.

Wenn mein Verdacht richtig ist, xattr devwerden die erweiterten Attribute des genannten Unterverzeichnisses dev(nicht der Datei dev/dev) angezeigt . Die Verzeichnisattribute sind wahrscheinlich nicht die Ursache für dieses Problem.

Wenn dies verwirrend ist, ls -lFRkönnen Sie möglicherweise sehen, was passiert (die -ROption listet Unterverzeichnisse rekursiv auf).

Wenn mein Verdacht richtig ist und Sie wirklich versuchen, eine Identitätsdatei mit privatem Schlüssel hinzuzufügen ~/.ssh/dev/dev, die dem ssh-Authentifizierungsagenten benannt ist, versuchen Sie es schließlich ssh-add dev/dev(oder besser ssh-add ~/.ssh/dev/dev, was unabhängig von den Berechtigungen des einschließenden Verzeichnisses funktionieren sollte).

Beute
quelle
Dies war kein Unterverzeichnis von ~ / .ssh, sondern ein Unterverzeichnis von ~, in dem xattr gesetzt war und das Verwirrung stiftete. Das hat es behoben. Vielen Dank!
Scott M Gardner