やること
- 【VPC】サブネットへのサーバーの設置 で起動したサーバーを使用
- WebサーバーからDBサーバーへの接続を可能にする
1. WebサーバーにApacheをインストールする
Webサーバー用のEC2インスタンス(test-publicserver
)にインストール
$ ssh -i ~/.ssh/[秘密鍵名].pem ec3-user@[パブリックIP]
[ec2-user@ip-[プライベートIP] ~]$ sudu su -
[root@ip-[プライベートIP] ~]# yum update -y
[root@ip-[プライベートIP] ~]# yum install -y httpd
2. セキュリティグループを作成する
DBサーバー用のEC2インスタンス(test-privateserver
)のセキュリティグループを変更するために新規作成
3. インバウンドルールを追加する
WebサーバーのIPアドレスからのアクセスのみを許可したいので、WebサーバーのCIDRブロック(10.0.5.0/24
)を指定する
4. セキュリティグループを変更する
DBサーバー用のインスタンス(test-privateserver
)のセキュリティグループを変更
→ DBサーバーがWebサーバーとの疎通を許可する状態となる
5. サブネット間の接続を確認する
Webサーバー用インスタンスにssh接続し、DBサーバー用インスタンスのプライベートIPアドレスにpingで疎通する
[ec2-user@ip-[パブリックIP] ~]$ sudo su -
[root@ip-[WebサーバーのプライベートIP] ~]# ping [DBサーバーのプライベートIP]
接続の確認完了
PING 10.0.10.173 (10.0.10.173) 56(84) bytes of data.
64 bytes from 10.0.10.173: icmp_seq=1 ttl=255 time=2.65 ms
64 bytes from 10.0.10.173: icmp_seq=2 ttl=255 time=2.75 ms
64 bytes from 10.0.10.173: icmp_seq=3 ttl=255 time=2.61 ms
:
:
【 備忘 】
手順1 でssh接続が出来ない!
事象:コマンドを実行しても応答が無く、タイムアウトしてしまう
原因:ルートテーブルがインターネットゲートウェイと関連付けられていなかった
解決法:AWS EC2にSSH接続できない・繋がらないときの確認項目 の「VPC のサブネット・インターネットゲートウェイを確認する」を参考に解決