EC2インスタンスに接続する方法
公開鍵認証で接続する
- サーバーへログイン時に認証を行う仕組み
- ユーザー名とパスワードを使用した認証と比べ、セキュリティが高い
- 公開鍵暗号(秘密鍵と公開鍵)を用いて認証を行う
- 公開鍵はサーバーが保有。秘密鍵を持っているユーザーだけログイン可能
認証の方法
[クライアント] ①アクセスするユーザ情報をサーバへ送信 [サーバー] ②クライアントに向けて、登録されたユーザの 公開鍵で暗号化したメッセージを送信 [クライアント] ③ペアとなる秘密鍵でメッセージを復号化し、そのハッシュ値をサーバへ送信 [サーバー] ④ハッシュ値を比較し、メッセージが正しく復号化されていれば、クライアントの秘密鍵所有と確認でき、ログイン許可をする
SSHでEC2インスタンスにログインする
作成したEC2インスタンスのパブリックIPアドレスを確認する。作成したインスタンスを作成するとインスタンスの詳細が表示されるので、赤枠のIPアドレスを利用する。
ユーザー名は「ec2-user」を入力する。「RSA/DSA/・・・鍵を使う」にチェックをして、EC2インスタンス作成時にダウンロードした秘密鍵を指定する。「OK」ボタンをクリックする。
EC2にログインすることができる
ポート番号
標準で決められている番号
登録済みポート番号 (1024–49151)
- 例えばmysqlの3306番や、Postgresqlの5432番など。
- 登録済みポートはIANAのサイトで確認することが出来る。 www.iana.org
動的・プライベート ポート番号
- 49142~ 65535までのいづれかの整数値
EC2起動時に利用しているポートを調べる
- losfコマンド、どのポート番号でどのプログラムが待ち受けているかを確認するためのコマンド。
- LISTENは、他のクライアントからのリクエストを待ち受けている状態で、ESTABLISHEDは通信中のポートである。
- TIMEWAITはソケットは終了して、リモートクライアント側からの切断要求が再送されるのを待っている状態
[ec2-user@ip-10-0-10-10 ~]$ sudo lsof -i -n -P COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME rpcbind 2678 rpc 6u IPv4 16617 0t0 UDP *:111 rpcbind 2678 rpc 7u IPv4 16618 0t0 UDP *:729 rpcbind 2678 rpc 8u IPv4 16619 0t0 TCP *:111 (LISTEN) rpcbind 2678 rpc 9u IPv6 16620 0t0 UDP *:111 rpcbind 2678 rpc 10u IPv6 16621 0t0 UDP *:729 rpcbind 2678 rpc 11u IPv6 16622 0t0 TCP *:111 (LISTEN) chronyd 2681 chrony 1u IPv4 16653 0t0 UDP 127.0.0.1:323 chronyd 2681 chrony 2u IPv6 16654 0t0 UDP [::1]:323 dhclient 2904 root 6u IPv4 17709 0t0 UDP *:68 dhclient 3034 root 5u IPv6 18048 0t0 UDP [fe80::4a6:99ff:fec5:4b40]:546 master 3175 root 13u IPv4 18866 0t0 TCP 127.0.0.1:25 (LISTEN) sshd 3343 root 3u IPv4 20269 0t0 TCP *:22 (LISTEN) sshd 3343 root 4u IPv6 20271 0t0 TCP *:22 (LISTEN) sshd 3544 root 3u IPv4 22923 0t0 TCP 10.0.10.10:22->122.209.124.33:50817 (ESTABLISHED) sshd 3562 ec2-user 3u IPv4 22923 0t0 TCP 10.0.10.10:22->122.209.124.33:50817 (ESTABLISHED)