Wie Roland in seiner Antwort erwähnt hat, ist es eine Warnung, dass das ssh-agent
Format des öffentlichen Schlüssels nicht verstanden wird und der öffentliche Schlüssel selbst dann nicht lokal verwendet wird.
Ich kann jedoch auch erläutern und beantworten, warum die Warnung vorhanden ist. Es läuft einfach darauf hinaus, dass der PuTTY-Schlüsselgenerator zwei verschiedene öffentliche Schlüsselformate generiert , je nachdem, was Sie im Programm tun.
Hinweis: Während meiner Erläuterung werden die Schlüsseldateien, die ich verwenden / generieren werde, id_rsa
mit den entsprechenden Erweiterungen benannt. Zum besseren Kopieren und Einfügen wird außerdem der übergeordnete Ordner der Schlüssel angenommen ~/.ssh/
. Passen Sie diese Details an Ihre Bedürfnisse an.
Die Formate
Link zur entsprechenden PuTTY-Dokumentation
SSH-2
Wenn Sie speichern eine Taste mit dem PuTTY Key Generator „Speichern öffentlicher Schlüssel“ Taste, wird es in der durch definierte Format gespeichert werden RFC 4716 .
Beispiel:
---- BEGIN SSH2 PUBLIC KEY ----
Comment: "github-example-key"
AAAAB3NzaC1yc2EAAAABJQAAAQEAhl/CNy9wI1GVdiHAJQV0CkHnMEqW7+Si9WYF
i2fSBrsGcmqeb5EwgnhmTcPgtM5ptGBjUZR84nxjZ8SPmnLDiDyHDPIsmwLBHxcp
pY0fhRSGtWL5fT8DGm9EfXaO1QN8c31VU/IkD8niWA6NmHNE1qEqpph3DznVzIm3
oMrongEjGw7sDP48ZTZp2saYVAKEEuGC1YYcQ1g20yESzo7aP70ZeHmQqI9nTyEA
ip3mL20+qHNsHfW8hJAchaUN8CwNQABJaOozYijiIUgdbtSTMRDYPi7fjhgB3bA9
tBjh7cOyuU/c4M4D6o2mAVYdLAWMBkSoLG8Oel6TCcfpO/nElw==
---- END SSH2 PUBLIC KEY ----
OpenSSH
Entgegen der landläufigen Meinung wird dieses Format vom Generator nicht gespeichert. Es wird jedoch generiert und im Textfeld "Öffentlicher Schlüssel zum Einfügen in die OpenSSH-Datei" authorized_keys "angezeigt. Um es als Datei zu speichern, müssen Sie es manuell aus dem Textfeld kopieren und in eine neue Textdatei einfügen.
Für den oben gezeigten Schlüssel wäre dies:
ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAhl/CNy9wI1GVdiHAJQV0CkHnMEqW7+Si9WYFi2fSBrsGcmqeb5EwgnhmTcPgtM5ptGBjUZR84nxjZ8SPmnLDiDyHDPIsmwLBHxcppY0fhRSGtWL5fT8DGm9EfXaO1QN8c31VU/IkD8niWA6NmHNE1qEqpph3DznVzIm3oMrongEjGw7sDP48ZTZp2saYVAKEEuGC1YYcQ1g20yESzo7aP70ZeHmQqI9nTyEAip3mL20+qHNsHfW8hJAchaUN8CwNQABJaOozYijiIUgdbtSTMRDYPi7fjhgB3bA9tBjh7cOyuU/c4M4D6o2mAVYdLAWMBkSoLG8Oel6TCcfpO/nElw== github-example-key
Das Format des Schlüssels ist einfach ssh-rsa <signature> <comment>
und kann durch Neuanordnen der SSH-2-formatierten Datei erstellt werden.
Öffentliche Schlüssel regenerieren
Wenn Sie davon Gebrauch machen ssh-agent
, haben Sie wahrscheinlich auch Zugriff auf ssh-keygen
.
Wenn Sie über Ihren privaten OpenSSH-Schlüssel ( id_rsa
Datei) verfügen , können Sie die öffentliche OpenSSH-Schlüsseldatei mithilfe von Folgendem generieren:
ssh-keygen -f ~/.ssh/id_rsa -y > ~/.ssh/id_rsa.pub
Wenn Sie nur den privaten PUTTY-Schlüssel ( id_rsa.ppk
Datei) haben, müssen Sie ihn zuerst konvertieren.
- Öffnen Sie den PuTTY Key Generator
- Klicken Sie in der Menüleiste auf "Datei"> "Privaten Schlüssel laden".
- Wählen Sie Ihre
id_rsa.ppk
Datei aus
- Klicken Sie in der Menüleiste auf "Conversions"> "OpenSSH-Schlüssel exportieren".
- Speichern Sie die Datei als
id_rsa
(ohne Erweiterung)
Nachdem Sie über einen privaten OpenSSH-Schlüssel verfügen, können Sie das ssh-keygen
Tool wie oben beschrieben verwenden, um den Schlüssel zu bearbeiten.
Bonus: Das PKCS # 1 PEM-codierte Public Key Format
Um ehrlich zu sein, weiß ich nicht, wofür dieser Schlüssel verwendet wird, da ich ihn nicht gebraucht habe. Aber ich habe es in meinen Notizen, die ich im Laufe der Jahre zusammengestellt habe, und ich werde es hier für eine gesunde Güte aufnehmen. Die Datei sieht folgendermaßen aus:
-----BEGIN RSA PUBLIC KEY-----
MIIBCAKCAQEAhl/CNy9wI1GVdiHAJQV0CkHnMEqW7+Si9WYFi2fSBrsGcmqeb5Ew
gnhmTcPgtM5ptGBjUZR84nxjZ8SPmnLDiDyHDPIsmwLBHxcppY0fhRSGtWL5fT8D
Gm9EfXaO1QN8c31VU/IkD8niWA6NmHNE1qEqpph3DznVzIm3oMrongEjGw7sDP48
ZTZp2saYVAKEEuGC1YYcQ1g20yESzo7aP70ZeHmQqI9nTyEAip3mL20+qHNsHfW8
hJAchaUN8CwNQABJaOozYijiIUgdbtSTMRDYPi7fjhgB3bA9tBjh7cOyuU/c4M4D
6o2mAVYdLAWMBkSoLG8Oel6TCcfpO/nElwIBJQ==
-----END RSA PUBLIC KEY-----
Diese Datei kann mit einem privaten OpenSSH-Schlüssel (wie oben unter "Regenerieren öffentlicher Schlüssel" generiert) generiert werden, indem:
ssh-keygen -f ~/.ssh/id_rsa -y -e -m pem > ~/.ssh/id_rsa.pem
Alternativ können Sie einen öffentlichen OpenSSH-Schlüssel verwenden, indem Sie:
ssh-keygen -f ~/.ssh/id_rsa.pub -e -m pem > ~/.ssh/id_rsa.pem
Verweise: