Mac から Linuxに対して公開鍵認証を利用したssh接続をするための設定方法についてまとめます。
Linux からLinuxにつなぐ場合も基本的に同じはずです。
1. 公開鍵の作成
$ ssh-keygen -t rsa
実行時のメッセージと解説は以下の通り。
Enter file in which to save the key (/foo):
/fooに公開鍵を作成しようとしています。特に作成先を指定しない場合はエンターを押して次に進む。
Enter passphrase (empty for no passphrase):
パスフレーズを入力する。
Enter same passphrase again:
同じものを再度。
Your identification has been saved in /foo/bar.
/foo/bar に秘密鍵が作成される。
Your public key has been saved in /foo/baz.
/foo/baz に公開鍵が作成される。
2. 公開鍵の配布
接続先のLinuxに1.で作成した公開鍵を配置します。
sftpでもなんでもいいですが、ここではscpを利用しています。
$ /foo/baz username@foobar.jp:~/.ssh/authorized_keys # /foo/bazは公開鍵、username/foobar.jpは接続先のユーザ名/ホスト名 authorized_keysは意味のある名前なので、他の名前にしてはいけない。
3. 接続
ssh-agentを起動し、公開鍵の情報を保持させる
$ ssh-agent bash # bash以外でもOK
$ ssh-add
Enter passphrase for /foo/baz と表示されるので、1.で設定したパスフレーズを入力する。
Identity Addedと表示されれば完了。
$ ssh-add -l # 公開鍵の情報が保持されているか確認できる。
$ ssh username@foobar.jp
パスワードを求められずに、ログインが完了すれば成功。
Pingback: Ansibleの導入 | AICS