Mac上で、公開鍵ペアを作成します。
接続を実行するユーザのホームディレクトリをカレントディレクトリにします。
$ cd
公開鍵ペアを作成します。
パスワードとか聞いてきますが、ただただ<Enter>を押します。
$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/var/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /var/root/.ssh/id_rsa.
Your public key has been saved in /var/root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:KWDbpKI0V88Lb0JT1SvTxfv9AtObNytGZd4nqVi7 root@MacBook-Pro.local
The key's randomart image is:
+---[RSA 2048]----+
| .. . |
| . . o |
| o... . o . |
| ..*+ + o . o |
| o..o+ooS o .=.o |
|..o.. +.. +.+o+ |
|. . + o.= +o |
| o . o++oo |
| ooE=+ |
+----[SHA256]-----+
*最初に聞いてくるのはファイル名です。変更したければ後で変更すればいいので、そのまま<Enter>。
そのあと、パスワード(パスフレーズ)を聞いてきます。ここでパスワードを設定した方がセキュリティ的には望ましいのですが、秘密鍵が盗まれた場合にも接続を難しくするためのパスワードです。個人で使う場合、秘密鍵をしっかり管理すればパスワードを設定する必要はありません。設定すると、接続の度に入力が必要で面倒です。もともと公開鍵で接続するのは、パスワードを入力するのが面倒だからですから。
作成したフォルダに、.sshのフォルダが作られそこに、id_rsa(秘密鍵)とid_rsa.pub(公開鍵)というファイルができています。
公開鍵をサーバーに設置
なんらかの方法で、接続先のユーザのホームディレクトリの下の.sshというフォルダ内に、id_rsa.pub(公開鍵)をauthorized_keysの名前にしてコピーします。
すでにauthorized_keysがある場合は、以下のようにして追加します。
$ cat id_rsa.pub >> authorized_keys
接続してみる
以下で接続できます。
$ ssh -l ec2-user ec2-xxx-xxx-xxx-xxx.us-west-2.compute.amazonaws.com