さくらVPSにsshでログインするのに長らくパスワード認証を使っていたのですが、scpするときなどに不便なので、公開鍵認証に切り替えました。
まずクライアント側でRSA鍵を生成します。
$ ssh-keygen
生成したRSA公開鍵を接続先に持っていきます。
$ scp ~/.ssh/id_rsa.pub kobalab.net:
接続先で公開鍵を追加します。
$ mkdir ~/.ssh $ cat id_rsa.pub >> ~/.ssh/authorized_keys $ chmod -R go-wrx ~/.ssh $ rm id_rsa.pub
ssh接続すると、OS Xのダイアログが表示されパスフレーズの入力を求められるので、RSA鍵生成時に指定したパスフレーズを入力します。キーチェーンに登録しておけば、以降パスフレーズの入力は不要になります。
パスワード認証を無効にする場合は、/etc/ssh/sshd_config の PasswordAuthentication に no を設定し、sshd を再起動します*1。
PasswordAuthentication no
$ sudo /etc/init.d/sshd restart