"Christmas - the time to fix the computers of your loved ones" « Lord Wyrm

[macOS Sierra] OpenSSH speichert automatisch Passwörter von privaten Schlüsseln

Luka 08.10.2016 - 15:29 5006 0 Thread rating
Posts

Luka

Administrator
...
Avatar
Registered: Nov 2006
Location: Mödling
Posts: 206
Seit macOS Sierra 10.12.0 werden die Passwörter zum Entschlüsseln von privaten SSH-Schlüsseln ungefragt in einem Schlüsselbund abgelegt, der nicht über die Schlüsselbundverwaltung einsehbar ist.

Das kann man mit einer undokumentierten Option in der SSH-Konfigurationsdatei (~/.ssh/config) deaktivieren:

Code:
Host *
	UseKeyChain no

Bereits gespeicherte Passwörter lassen sich nur direkt aus der Datenbank löschen:

Zitat
for f in ~/Library/Keychains/*/keychain-2.db; do sqlite3 $f "delete from genp where agrp = 'com.apple.ssh.passphrases';"; done

Damit man dennoch nicht jedes Mal das Passwort eingeben muss, kann man SSH-Schlüssel automatisch im SSH-Agent ablegen lassen. Seit OpenSSH 7.2 muss man dies in der Konfigurationsdatei mit AddKeysToAgent yes aktivieren.
Mit dem Befehl ssh-add -D kann man alle gespeicherten Schlüssel aus dem SSH-Agent wieder entfernen.

UPDATE:
Seit macOS Sierra 10.12.2 werden die Passwörter nicht mehr automatisch im Schlüsselbund abgelegt. Die Option UseKeyChain ist standardmäßig deaktiviert und wird in der Manpage ssh_config dokumentiert. Gespeicherte Passwörter befinden sich im Schlüsselbund "Lokale Objekte".
Apple hat dazu ein Support-Dokument veröffentlicht: https://developer.apple.com/library...uid/DTS40017589


Quelle:
https://openradar.appspot.com/28394826
https://lobste.rs/s/sounxg/macos_si...y_remembers_ssh
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz