Der Entsperrschlüsselbund für OSX Sierra funktionierte innerhalb von SSH nicht mehr

Der Entsperrschlüsselbund für OSX Sierra funktionierte innerhalb von SSH nicht mehr

Wir verbinden uns per SSH mit einem MAC und führen ein Skript aus, das die Zeile enthält

security unlock-keychain -p XXX

Aber seit wir die Maschine auf "macOS Sierra" aktualisiert haben, erhalten wir einen Fehler

security: SecKeychainUnlock <NULL>: The user name or passphrase you entered is not correct.

Irgendwelche Ideen?

Antwort1

Wenn Sie eine Verbindung über SSH herstellen, scheint es, als securitywüsste er nichts über die Schlüsselbunde des angemeldeten Benutzers: Wenn Sie einen security list-keychainsBefehl eingeben, wird Ihnen nur der Systemschlüsselbund und nicht die Schlüsselbunde des Benutzers angezeigt.

Sie müssen lediglich die Schlüsselbunddatei angeben, die Sie entsperren möchten:

security unlock-keychain -p XXX "keychain_path_here"

Wo keychain_path_hereist so etwas wie /Users/username/Library/Keychains/login.keychain-db.

Antwort2

Wenn Sie nicht bei jedem SSH-Zugriff auf einen Computer einen Schlüsselbund zum Entsperren angeben möchten, können Sie einen SSH-Schlüssel erstellen und ihn auf den Zielcomputer kopieren:

ssh-keygen
ssh-copy-id [email protected]

Nachdem Sie Ihre SSH-ID auf den Host kopiert haben, können Sie den Standard-Anmeldeschlüsselbund für den Benutzer entsperren, mit dem Sie sich anmelden. Wenn Sie mehrere Benutzerkonten haben, mit denen Sie sich anmelden müssen, können Sie für jeden Benutzer eine SSH-Kopie der ID durchführen.

(ssh-copy-id ist standardmäßig nicht in macOS enthalten. Sie können es mit Homebrew installieren)

verwandte Informationen