SSHとSSHが技術基盤となるSCP、SFTPで接続するときにパスワードの入力を省くため、鍵を生成する。

DSA キーを生成

$ ssh-keygen -t dsa

出力するファイル名、パスフレーズは何も入力せずEnteyでもOK。

公開鍵をリモートホストにコピー

$ scp ~/.ssh/id_dsa.pub user@remotehost:

リモートホストにログインし、authorized_keys ファイルを生成します。

$ chmod 755 ~
$ test -d .ssh || mkdir .ssh
$ chmod 700 .ssh/
$ cd .ssh/
$ touch authorized_keys
$ chmod 600 authorized_keys
$ cat ~/id_dsa.pub >>authorized_keys
$ rm ~/id_dsa.pub

以上で自動ログインが完了。

ただし、sshによる鍵交換方式での自動ログインのため、sshサーバの設定は以下の通りであることが前提。

$ sudo vi /etc/ssh/sshd_config
#RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeyFile .ssh/authorized_keys

※ssh1 の場合は 「RSAAuthentication yes」 のコメントを外す。
※ssh2 の場合は 「PubkeyAuthentication yes」 のコメントを外す。

設定を変更した場合は再起動が必要。

$ sudo service sshd restart