
Als ich meinen privaten Schlüssel in PuttyGen exportierte, ging ich davon aus, dass die von mir festgelegte Passphrase auch in der OpenSSH-Version verwendet wurde. Ich stelle fest, dass die von mir eingegebene Passphrase nicht funktioniert. Wie exportiere ich meinen privaten Schlüssel richtig im OpenSSH-Format mit einer Passphrase?
Um den exportierten SSH-Schlüssel auf Linux zu übertragen, habe ich ihn einfach in Nano eingefügt und versucht, ihn per SSH hinzuzufügen. Ich werde zur Eingabe einer Passphrase aufgefordert, aber die von mir eingegebene wird nicht akzeptiert. PuttyGen importiert ihn jedoch problemlos mit dieser Passphrase.
Antwort1
Der „OpenSSH-Schlüssel exportieren“ von Windows PuTTYgentutverschlüsseln Sie den Schlüssel mit 3DES-CBC. Wenn die Passphrase nicht leer ist, lautet die Ausgabedatei:
-----BEGINNEN SIE MIT DEM PRIVATEN RSA-SCHLÜSSEL----- Proc-Typ: 4, VERSCHLÜSSELT DEK-Info: DES-EDE3-CBC,157A04D5AE43F45B NiGUXnTOhATzg4dGvyXs8rzetF7KpplJJIKrZvQunXuVcZhVS+NTpnTgwJb+zOCm ...
Ich habe dies in den letzten 4 Jahren mit verschiedenen Versionen getestet. Wenn die Passphrase leer ist, erhalte ich sogar die Eingabeaufforderung „Sind Sie sicher?“.
Auch Linux puttygen
verwendet bei der Konvertierung immer die gleiche Passphrase.
Für RSA- und DSA-Schlüssel verwendet OpenSSH dasselbe „rohe“ Schlüsselformat wie OpenSSL. Wenn 3DES-CBC also nicht ausreicht, können Sie dasopenssl
Befehlszeilentool, um sie erneut zu verschlüsseln:
openssl rsa -aes-128-cbc < old.key > new.key
Unter Unix ist natürlich OpenSSH selbst ssh-keygen
besser:
ssh-keygen -p -f old.key