ssh-agent unter macOS Sierra nutzen

Wie du unter macOS Sierra den ssh-agent nutzt und die Passphrase deiner Keys wieder aus dem Speicher entfernst

Die aktuelle Version des Apple-Betriebssystems, macOS Sierra, bringt einige Neuerungen beim SSH-Client mit sich. Standardmäßig stehen die Schlüssel nicht mehr via ssh-agent zur Verfügung und die dazugehörigen Kennwörter werden ungefragt im Schlüsselbund gespeichert. Dieser Beitrag zeigt, wie du das gewohnte Verhalten wiederherstellst.

Nach dem Update auf macOS 10.12 ist mir aufgefallen, dass ssh-add -l keine verfügbaren Schlüssel mehr anzeigt und – für mich noch lästiger – meine Passphrase anscheinend permanent gespeichert wird, ohne dass es eine sichtbare Option dafür gibt.

Dank eines Postings bei StackExchange bin ich auf eine einfache Lösung gestoßen. Um den ssh-agent wieder funktionsfähig zu bekommen, editierst du deine SSH-Konfigurationsdatei unter ~/.ssh/config, die ich in einem früheren Blogbeitrag schon beschrieben habe. Die Zeile

AddKeysToAgent yes

führt dazu, dass SSH-Schlüssel fortan wieder im Agent zur Verfügung stehen. Danach kannst du das gespeicherte Kennwort eines Schlüssels auch wieder entfernen, indem du einfach den entsprechenden Eintrag im Agent löscht:

ssh-add -K -d ~/.ssh/DeinKey

War der Vorgang erfolgreich, quittiert SSH das mit Identity removed: /Users/DeinBenutzer/.ssh/DeinKey (DeinKey) und beim nächsten Mal fragt der SSH-Client wieder nach der Passphrase.

Um beim Abmelden automatisch die Kennwörter aller SSH-Schlüssel zu entfernen, kannst du auch ein Skript erstellen – doch dazu mehr in einem separaten Blogposting, denn diese Möglichkeit muss ich mir selbst noch genauer ansehen. ;-)

Autor: Florian Effenberger

Florian engagiert sich seit über 18 Jahren für freie Software und ist einer der Gründer der The Document Foundation, der Stiftung hinter LibreOffice

6 Gedanken zu „ssh-agent unter macOS Sierra nutzen“

  1. Nach der Möglichkeit zum Löschen habe ich vorhin die ganze Zeit gesucht, bis ich zum Schluss dann einfach die gesamte Keychain gelöscht und neu gemacht habe.

    Und jetzt finde ich einen Beitrag der mir zeigt, wie ich es innerhalb von 10 Sekunden geschafft hätte ?

    Hatte übrigens bei
    ssh-add -d .ssh/id_rsa
    das -K vergessen, weil das für mich aus dem Text der man page nicht verständlich genug war.

    Aber vielen Dank für den Beitrag, das werde ich in Zukunft nicht mehr vergessen :)

      1. Ich habe 10.12.3 und bei mir läuft alles ohne Passwortabfrage.

        In der config habe ich allerdings folgendes stehen:
        Host *
        AddKeysToAgent yes
        UseKeychain yes
        IdentityFile ~/.ssh/id_rsa

        Dadurch musste ich den Schlüssel auch gar nicht erst mit ssh-add -K .ssh/id_rsa zur Keychain hinzufügen sondern es war alles automatisch.

Schreibe einen Kommentar

Ich stimme der Datenschutzerklärung zu