ssh-add -l
zeigt an, dass ich meinem SSH-Agenten 3 RSA-Schlüssel hinzugefügt habe. ssh-add -L
zeigt die öffentlichen Schlüssel an. Wie bekomme ich auch die privaten Schlüssel, damit ich sie in einer Datei speichern kann? Oder ist es von Entwurf, dass dies unmöglich ist, d. H. Ssh-agent kann aufgefordert werden, Operationen unter Verwendung des privaten Schlüssels auszuführen, aber es wird niemals den Schlüssel selbst zurückgeben? Wenn es so ist, wie kann ich dann eine Nummer für mich verschlüsseln / entschlüsseln?
Es ist OK, dass ich Code dafür schreiben muss (die Programmiersprache spielt keine Rolle), aber ich würde lieber ein vorhandenes Werkzeug oder eine Bibliothek verwenden.
Ich habe gerade eine sehr gute Erklärung dafür gefunden, wie ssh-agent funktioniert: Ссылка . Dies beantwortet teilweise einige meiner Fragen.
Einer der schlaueren Aspekte des Agenten ist, wie er die Identität eines Benutzers (genauer gesagt, den Besitz eines privaten Schlüssels) verifizieren kann, ohne diesen privaten Schlüssel jemandem zu zeigen.
Einer der Sicherheitsvorteile der Agentenweiterleitung besteht darin, dass der private Schlüssel des Benutzers niemals auf Remote-Systemen oder auf der Leitung erscheint, auch nicht in verschlüsselter Form.
Soweit ich die Erklärung dort verstanden habe, bietet das Protokoll zwischen dem SSH-Client und dem ssh-agent in SSH1 oder SSH2 keine Möglichkeit, die privaten Schlüssel von einem ssh-agent herauszuholen.
Tags und Links encryption key-management ssh-agent