ssh-copy-idって知っていますか?
ssh-copy-idを使えば複数台の公開鍵登録を自動で行うことができます。
以下にssh-copy-idの使用方法等を記します。
sshの公開鍵認証を行うためには、以下の手順が必要です。
/.ssh/authorized_keysは、元々ファイルが存在していないため作成する必要がある
等々でわりと面倒です。何十台も接続先ホストがあるとすると、かなりの負担になります。
これを自動で行うのがssh-copy-idコマンドです。
通常のssh接続と同様に、引数にアカウント@接続先ホスト名を指定して実行します。
接続先のパスワードの入力を求められるので、それに答えます。
% ssh-copy-id user01@192.168.10.15 Password: Now try logging into the machine, with "ssh 'user01@192.168.10.15'", and check in: .ssh/authorized_keys to make sure we haven't added extra keys that you weren't expecting.
これだけで接続先ホストでの面倒な作業は省略できます。
登録する公開鍵ファイルはデフォルトで、~/.ssh/id_rsa.pubです。
任意のファイルを指定するには、-iオプションで指定します。
% ssh-copy-id -i ~/.ssh/hoge.pub user01@192.168.10.15 Password: Now try logging into the machine, with "ssh 'user01@192.168.10.15'", and check in: .ssh/authorized_keys to make sure we haven't added extra keys that you weren't expecting.
ちなみに、ssh-copy-idの実体は簡単なシェルスクリプトです。
引数の公開鍵が本当の公開鍵であるかなどのチェックはしていないので、
ファイルの指定の際には気を付けて下さい。
(ファイル名の拡張子が.pubであれば、どんなファイルでも~/.ssh/authorized_keysに登録してしまいます。)
以上、ssh-copy-idを使って、sshの公開鍵認証の鍵登録を簡単に行う方法についてでした。