dropbear client: pub-key authentication

今まではOpenssh Clientを使ったpub-keyのsshアクセスをやっていましたが、どうも漠然とした疑問があり、デフォルトインストールの dropbearでpub-keyアクセスはできないものかとずっと思っていました。というのはOpenWrtをインストールしたルーターは厳しい容量で運用しなければなりません。せっかくdropbeaarがあるのにOpensshクライアントを入れるのは無駄だと思われるからです。

色々と調べてみてどうやらできることがわかりました。

手順

OpenWrtは導入後に秘密鍵を持っています。それをpub-keyに変換します。

cd /etc/dropbear
dropbearkey -y -f dropbear_rsa_host_key | grep "^ssh-rsa " > dropbear_rsa_host_key.pub

秘密鍵をデフォルトローケーションに置きます。

mkdir /root/.ssh
cd /root/.ssh
ln -s /etc/dropbear/dropbear_rsa_host_key id_dropbear

pug-keyをリモート先のdropbearに登録します。

scp dropbear_rsa_host_key.pub root@<remote IP>:/tmp
ssh root@<remote IP>

[remote login]

cd /etc/dropbear
cat /tmp/dropbear_rsa_host_key.pub >> authorized_keys

秘密鍵を指定してログインする方法

ssh root@<remote IP> ~i /etc/dropbear/dropbear_rsa_host_key