
PuttyGen で秘密鍵をエクスポートしたとき、設定したパスフレーズが openSSH バージョンでも使用されていると想定していました。入力したパスフレーズが機能していないようです。パスフレーズ付きの openSSH 形式で秘密鍵をエクスポートする正しい方法は何ですか?
エクスポートした SSH キーを Linux に転送するために、それを nano に貼り付けて、SSH 追加しようとしました。パスフレーズの入力を求められますが、入力したパスフレーズは受け入れられません。ただし、PuttyGen ではそのパスフレーズで問題なくインポートされます。
答え1
Windows PuTTYgen の「OpenSSH キーのエクスポート」するキーを 3DES-CBC で暗号化します。パスフレーズが空でない場合は、出力ファイルに次のように表示されます。
-----RSA 秘密鍵の開始----- プロセスタイプ: 4、暗号化済み DEK 情報: DES-EDE3-CBC,157A04D5AE43F45B ニグントーアッツグ4dGvyXs8rzetF7KpplJJIKrZvQunXuVcZhVS+NTpnTgwJb+zOCm ...
私は過去 4 年間にわたって、さまざまなバージョンでこれをテストしてきました。パスフレーズが空の場合、「よろしいですか?」というプロンプトも表示されます。
Linux でもputtygen
、変換時には常に同じパスフレーズが使用されます。
RSAおよびDSAキーの場合、OpenSSHはOpenSSLと同じ「生の」キー形式を使用します。したがって、3DES-CBCでは不十分な場合は、openssl
再暗号化するためのコマンドライン ツール:
openssl rsa -aes-128-cbc < old.key > new.key
もちろん、Unix では OpenSSH 自体の方ssh-keygen
が優れています。
ssh-keygen -p -f old.key