AWS

AWS勉強 -NATを構築する-


NATを構築する

プライベートサブネットに配置したサーバーはインターネットから接続できないため安全だ.

しかしインターネットと一切通信できないのとサーバーのアップデートやソフトウェアのインストールの際に不便だ.

この問題を解決するのがNATで,NATは「プライベートサブネット→インターネット」の向きの通信だけを許可する.


NATの用途と必要性

これから,DBサーバーに「MySQL」というデーターベースソフトをyumコマンドを使用してインストールしてWebサーバーから利用できるようにするのだが,ここで問題が発生する.

DBサーバーはプライベートサブネットにあるためインターネットに接続できないという問題だ.

つまりyumなどのコマンドを使用してもソフトウェアをダウンロードできないのだ.

踏み台サーバーを経由して必要なソフトウェアを1つずつscpコマンドなどでコピーすることもできるが,手間がかかりすぎてしまう.


NATの仕組み

https://milestone-of-se.nesuke.com/nw-basic/nat/nat-summary/

上記参考に


NATインスタンスとNATゲートウェイ

AWSでNATを構成する場合,次の2つの方法がある.

①NATインスタンス

https://docs.aws.amazon.com/ja_jp/vpc/latest/userguide/VPC_NAT_Instance.html

②NATゲートウェイ

https://docs.aws.amazon.com/ja_jp/vpc/latest/userguide/vpc-nat-gateway.html

本書では構築のしやすさからNATゲートウェイを利用する.


パブリックサブネットとプライベートサブネットをNATゲートウェイで接続する

プライベートサブネットに配置したDBサーバーをNATゲートウェイを経由してインターネットに接続できるようにするために以下のような手順を踏んでいく.


NATゲートウェイを配置する

インターネットから接続可能な場所である「パブリックサブネット」に配置して起動する.


デフォルトゲートウェイを設定する

NATゲートウェイの準備ができたらプライベートサブネットからインターネット宛のパケットがNATゲートウェイを経由するようにルートテーブルを変更する.


NATゲートウェイを構築する


NATゲートウェイを起動する

VPCに移動後,

スクリーンショット 2018-10-28 16.22.42.png

からの,

スクリーンショット 2018-10-28 16.31.01.png

できた❣️

スクリーンショット 2018-10-28 16.31.28.png


ルートテーブルを更新する

スクリーンショット 2018-10-28 16.51.37.png

からの,

スクリーンショット 2018-10-28 23.29.16.png


NATゲートウェイを通じた疎通確認をする


curlコマンドで確認する

DBサーバーにSSHでログインして,

$curl www.nikkeibp.co.jp

と入力してwww.nikkeibp.co.jpのトップページを取得してみる.

これで出力されればNATゲートウェイが機能してHTTP通信ができていることが確認できる.

スクリーンショット 2018-10-28 17.07.54.png

でけた!

ちなみに,NATゲートウェイは稼働時間と転送バイト単位の両方で課金されるらしいので全く通信していなくても稼働していれば料金がかかってしまうらしい.

なのでNATゲートウェイを使う必要がなくなったら削除するとよい!


感想

ほぼ終盤ですね.

あと少し頑張ります!