AWS勉強 -プライベートサブネットにサーバーを構築する-
AWS勉強 -プライベートサブネットにサーバーを構築する-:
プライベートサブネットができたので次にサーバーを構築していく!
からの,
https://qiita.com/KawamotoShuji/items/71acff242ee7548bd4f9
ステップ3までは上記参考に��♂️
からの,
からの,
からの,
正常に作られたのか確認する,
このDBサーバーがWebサーバーからアクセスできるかどうか確認してみる.
サーバー間での疎通を確認するときによく用いるのが「pingコマンド」だ.
pingコマンドを実行するとネットワーク疎通を確認したいホストに対して「ICMPエコー要求」というパケットを送信する.
それを受け取ったホストは「ICMPエコー応答」というパケットを返信する.
このコマンドでは「ICMPエコー要求」と「ICMPエコー応答」のやりとりから疎通確認や相手に届くまでの時間を計測したりする.
からの,
からの,
ICMPプロトコルを通るように構成したのでpingコマンドを使って疎通確認できる.
実際にWebサーバーからDBサーバーへの疎通確認をしてみる.
上記みたいな感じになる.
さらにpingコマンドを使って疎通確認を続ける.
ローカル環境からこのWebサーバーに対してpingコマンドを実行してみる.
しかし,上記のようにTimeOutしてしまう.
これはWebサーバーと疎通不可能なわけではなく,Webサーバーに適用されているセキュリティグループにおいてICMPを許可していないからだ.
そうすると疎通確認することができる.
ここまでで作成したDBサーバーにSSHでログインしてMySQLをインストールする.
そこで疑問なのが,DBサーバーはインターネットと接続されていないのにどうやってSSH接続するのかだ.
その解決策の1つが「踏み台サーバー」だ.
ここまでで,WebサーバーにはSSHで接続でき,WebサーバーからDBサーバーに疎通確認が取れている.
そこで,
①WebサーバーにSSHでアクセス,②WebサーバーからDBサーバーにSSHでアクセスというようにWebサーバーを踏み台とすればローカル環境からDBサーバーへとアクセスできる.
インスタンスにSSHでアクセスするには「秘密鍵」をWebサーバーに置く必要がある.
サーバーにファイルを転送するには「SCP(Secure Copy)」というプロトコルを使う.
Macで行う!
ターミナルで以下を実行.
接続しましょう!(雑
下記コマンドを入力
こんな感じ.
Webサーバー上から下記コマンドを入力
できた❣️
会社でAWSのDBサーバーにアクセスするとき,
二回SSHログインしていた意味がわかった.
こんな構成になっていたんだ...
もっと勉強するぞ.
プライベートサブネットにサーバーを構築する
プライベートサブネットができたので次にサーバーを構築していく!
サーバーを構築する
からの,
https://qiita.com/KawamotoShuji/items/71acff242ee7548bd4f9
ステップ3までは上記参考に��♂️
からの,
からの,
からの,
正常に作られたのか確認する,
pingコマンドで疎通確認できるようにする
このDBサーバーがWebサーバーからアクセスできるかどうか確認してみる.サーバー間での疎通を確認するときによく用いるのが「pingコマンド」だ.
pingコマンドを実行するとネットワーク疎通を確認したいホストに対して「ICMPエコー要求」というパケットを送信する.
それを受け取ったホストは「ICMPエコー応答」というパケットを返信する.
このコマンドでは「ICMPエコー要求」と「ICMPエコー応答」のやりとりから疎通確認や相手に届くまでの時間を計測したりする.
ICMPが通るように構成する
手順1 -インバウンドの設定を始める-
からの,
からの,
疎通を確認する
ICMPプロトコルを通るように構成したのでpingコマンドを使って疎通確認できる.実際にWebサーバーからDBサーバーへの疎通確認をしてみる.
SSHでログインする
$ ssh -i ~/Downloads/my-key.pem ec2-user@ec2-18-179-47-97.ap-northeast-1.compute.amazonaws.com
DBサーバーのIPに対してpingを実行してみる
$ ping 10.0.2.10
上記みたいな感じになる.
ローカル環境からWebサーバーに疎通できるようにする
さらにpingコマンドを使って疎通確認を続ける.
接続してみる
ローカル環境からこのWebサーバーに対してpingコマンドを実行してみる.$ ping ec2-18-179-47-97.ap-northeast-1.compute.amazonaws.com
しかし,上記のようにTimeOutしてしまう.
これはWebサーバーと疎通不可能なわけではなく,Webサーバーに適用されているセキュリティグループにおいてICMPを許可していないからだ.
ICMPを許可する設定を加える
そうすると疎通確認することができる.
踏み台サーバーを経由してSSHで接続する
ここまでで作成したDBサーバーにSSHでログインしてMySQLをインストールする.そこで疑問なのが,DBサーバーはインターネットと接続されていないのにどうやってSSH接続するのかだ.
その解決策の1つが「踏み台サーバー」だ.
ここまでで,WebサーバーにはSSHで接続でき,WebサーバーからDBサーバーに疎通確認が取れている.
そこで,
①WebサーバーにSSHでアクセス,②WebサーバーからDBサーバーにSSHでアクセスというようにWebサーバーを踏み台とすればローカル環境からDBサーバーへとアクセスできる.
秘密鍵をアップロードする
インスタンスにSSHでアクセスするには「秘密鍵」をWebサーバーに置く必要がある.サーバーにファイルを転送するには「SCP(Secure Copy)」というプロトコルを使う.
ファイルを転送してみる
Macで行う!ターミナルで以下を実行.
$ scp -i ~/Downloads/my-key.pem ~/Downloads/my-key.pem ec2-user@ec2-18-179-47-97.ap-northeast-1.compute.amazonaws.com:~/
WebサーバーからSSHで接続する
接続しましょう!(雑
鍵ファイルのパーミッションを変更する
下記コマンドを入力$ chmod 400 my-key.pem
こんな感じ.
Webサーバーを踏み台にしてDBサーバーにSSH接続
Webサーバー上から下記コマンドを入力$ ssh -i my-key.pem ec2-user@10.0.2.10
できた❣️
感想
会社でAWSのDBサーバーにアクセスするとき,二回SSHログインしていた意味がわかった.
こんな構成になっていたんだ...
もっと勉強するぞ.
コメント
コメントを投稿