この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので十分ご注意ください。
はじめに
AWS認定ソリューションアーキテクト目指す学習のまとめ⑧
の後ろで、整理続きます。
今回は、Amazon VPC関する知識を勉強続きます。
ネットワークACL(NACL)
ネットワークアクセスコントロールリスト (ACL) は、サブネットのインバウンドトラフィックとアウトバウンドトラフィックを制御するファイアウォールとして動作する、VPC 用のセキュリティのオプションレイヤーです。
NACLの特徴
・デフォルトのネットワーク ACL:デフォルトでは、すべてのインバウンドおよびアウトバウンドの IPv4 トラフィックと、IPv6 トラフィック (該当する場合) が許可されます。
・カスタムネットワーク ACL:デフォルトでは、各カスタムネットワーク ACL は、ルールを追加するまですべてのインバウンドトラフィックとアウトバウンドトラフィックを拒否します。
・VPC 内の各サブネットに唯一のネットワーク ACL を関連付ける必要があります。
・ネットワーク ACL を複数のサブネットに関連付けることができます。
・ネットワーク ACL には、ルールの番号付きリストが含まれます。低い番号から順にルールを評価し、ネットワーク ACL に関連付けられたサブネットのインバウンドトラフィックまたはアウトバウンドトラフィックが許可されるかどうかを指定します。ルールに使用できる最も高い番号は 32766 です。まずは増分 (たとえば 10 または 100 の増分) でルールを作成することをお勧めします。こうすると、後で必要になったときに新しいルールを挿入できます。
・ネットワーク ACL はステートレスです。
Elastic IP アドレス
Elastic IP アドレスは、動的なクラウドコンピューティング向けに設計された静的なパブリック IPv4 アドレスです。Elastic IP アドレスは、アカウントのすべての VPC の任意のインスタンスまたはネットワークインターフェイスに関連付けることができます。
Elastic IP アドレスを使用するには、まずアカウントで使用するために割り当てます。次に、VPC のインスタンスまたはネットワークインターフェイスに関連付けることができます。Elastic IP アドレスは、明示的に解放するまで AWS アカウントに割り当てられたままです。
ネットワークアドレス変換(NAT)
NAT デバイスを使用して、プライベートサブネットのインスタンスからはインターネット (ソフトウェアアップデートの目的など) や他の AWS のサービスに接続できるが、インターネットからはインスタンスとの接続を開始できないようにすることができます。
NAT デバイスは、プライベートサブネットのインスタンスからのトラフィックをインターネットや他の AWS のサービスに送信し、その応答をインスタンスに返送します。
IPv4 アドレスは NAT デバイスのアドレスに置き換えられます。
AWS は、NAT デバイスとして NAT ゲートウェイと NAT インスタンスの 2 種類を提供しています。NAT インスタンスよりも可用性と帯域幅に優る NAT ゲートウェイを使用することをお勧めします。
NAT ゲートウェイ
ネットワークアドレス変換 (NAT) ゲートウェイを使用して、プライベートサブネットのインスタンスからはインターネットや他の AWS のサービスに接続できるが、インターネットからはこれらのインスタンスとの接続を開始できないようにすることができます。
NATインスタンス
VPC でパブリックサブネットのネットワークアドレス変換 (NAT) インスタンスを使用し、プライベートサブネットのインスタンスからはインターネットや他の AWS のサービスへのアウトバウンド IPv4 トラフィックを開始できますが、インターネット上で他の人が開始したインバウンドトラフィックはインスタンスで受信しないようにすることができます。
5.2_[Demo]NAT ゲートウェイ作成
NAT ゲートウェイの作成
NAT ゲートウェイの作成する。
NAT ゲートウェイを作成する先のサブネットを指定し、NAT ゲートウェイに関連付ける Elastic IP アドレスの割り当て ID を選択します。
状態が Available に変わり、NAT ゲートウェイが利用可能になります。(少し時間がかかります)
ルートテーブルの更新
NAT ゲートウェイを作成したら、プライベートサブネットのルートテーブルを更新して、インターネットトラフィックを NAT ゲートウェイに向かわせる必要があります。
ナビゲーションペインで、Route Tables を選択し、プライベートサブネットに関連付けられているルートテーブルを選択し、ルート編集を選択します。
送信先 に0.0.0.0/0と入力します。ターゲット で、NAT ゲートウェイの ID を選択します。
VPCエンドポイント(VPC Endpoint)
VPC エンドポイントは、VPC およびサポートされている AWS のサービスと、AWS PrivateLink を利用した VPC エンドポイントサービスとの間のプライベート接続を可能にします。
VPC エンドポイントは、インターネットゲートウェイ、NAT デバイス、VPN 接続、またはAWS Direct Connect 接続を必要としません。
VPC のインスタンスは、サービスのリソースと通信するためにパブリック IP アドレスを必要としません。
VPC と他のサービス間のトラフィックは、Amazon ネットワークを離れません。
2種類の VPC エンドポイント:
インターフェイスエンドポイント
ゲートウェイエンドポイント
5.3_[Demo]VPCエンドポイント(VPC Endpoint)
ゲートウェイエンドポイントの作成
Service Name で、接続先のサービスを選択します。DynamoDB またはAmazon S3 へのゲートウェイエンドポイントを作成するには、タイプ 例に ゲートウェイ と表示されていることを確認します。
ルートテーブルの設定 で、エンドポイントで使用するルートテーブルを選択します。選択したルートテーブルに、サービスへのトラフィックを対象とするルートが自動的に追加されます。
ポリシー で、ポリシーのタイプを選択します。デフォルトのオプションである フルアクセス のみそのまま使用して、サービスへのフルアクセスを許可できます。または、カスタム を選択し、AWS Policy Generator を使用してカスタムポリシーを作成するか、独自のポリシーをカスタムウィンドウに入力することもできます。
まとめ
今日、私はAmazon VPC関するのネットワークACLとVPCエンドポイントの知識を整理し、学びました。
NATは、不十分なIPアドレスの問題を解決するだけでなく、ネットワーク外部からの攻撃を効果的に回避し、ネットワーク内のインスタンスを隠して保護します。
エンドポイントは、仮想デバイスです。これにより、ネットワークトラフィックに可用性リスクや帯域幅の制約を課すことなく、VPC 内のインスタンスとサービス間の通信が可能になります。