この記事について
| 環境 | Poderosa(SSH2鍵)+ iphone の termius |
|---|---|
| 目的 | PCで使っていた秘密鍵を iphone のターミナルでも使う |
| 結果 | puttygen で OpenSSH 形式に変換して接続できた |
つまずきポイント要約
- Poderosaの鍵は ssh.com形式(SECSH)で、termius では OpenSSH 形式への変換が必要
- ssh-keygen -i は「unsupported cipher 3des-cbc」で失敗。puttygen の Import → Export OpenSSH key で変換できた
事象
PoderosaをSSH2 形式で利用していて、PC に置いてある秘密鍵を iphone のターミナルでも再利用しようとコピペしたが使えない。
id_rsa というファイル名でこんな感じの内容だった
---- BEGIN SSH2 ENCRYPTED PRIVATE KEY ----
Comment:
faejpg@gjewrewf:affewgwgrgfsdfdsfdsfsdffa
ejpg@gjewrewf:affewgwgrgfsdfdsfdsfsdffaej
pg@gjewrewf:affewgwgrgfsdfdsfdsfsdffaejpg
@gjewrewf:affewgwgrgfsdfdsfdsfsdffaejpg@g
jewrewf:affewgwgrgfsdfdsfdsfsdffaejpg@gjew
rewf:affewgwgrgfsdfdsfdsfsdf
---- END SSH2 ENCRYPTED PRIVATE KEY ----
原因
これはssh.com形式(SECSH)という形式の鍵で termius で使用するには OpenSSH形式への変換が必要らしい
認証鍵の形式についてはこちらを参考
「SSHの公開鍵ってなに?」の「認証鍵の形式」の章
ちなみにサーバーにアップロードされている公開キーは ssh-rsa~ から始まる一行の物でOpenSSH 形式だった。
cat /home/ユーザー名/.ssh/authorized_keys
ssh.com形式(SECSH)をOpenSSH形式へ鍵の形式変換
対処1:ssh-keygen で変換 → 失敗
変換を試みる
ssh-keygen コマンドがあるか確認
which ssh-keygen
変換を実施
# ssh-keygen -i -f id_rsa > new_id_rsa
unsupported cipher 3des-cbc
decode blob failed.
失敗した。
対処2:puttygen で変換 → 成功
別の方法で変換を試みる。
参考ページの方法で変換する↓
PoderosaのSSH2の秘密鍵をOpenSSHで使う
秘密鍵の変換は puttygen.exe を利用するとできるらしい。
1.ダウンロードしたputtygen.exe をダブルクリックで起動。
2. [Conversions]→[Import key] でPoderosaで作成した秘密鍵をインポート
3. [Conversions]→[Export OpenSSH key] で秘密鍵をエクスポート
出来上がった秘密鍵を iphone の termius に itunes のファイル共有から移動させて接続できた。
