AWS Academyで学んだAWS基礎とVPC Lab
注意: この記事は、AWS Academy で学んだ内容について残していたメモ書きをもとに、AI を使って文章として整理したものです。
はじめに
この文章では、AWS Academy で学んだ AWS の基礎項目と VPC Lab の内容をまとめます。
AWS の学習内容は、アカウント管理、アクセス制御、ネットワーク構成、Lab の順に整理すると流れを追いやすくなります。
主な項目は次の通りです。
- AWS Organizations
- IAM
- IAM ロールとポリシー
- リージョンとアベイラビリティーゾーン
- Amazon VPC
- セキュリティグループ
- ネットワーク ACL
- VPC Lab
AWSアカウント管理とアクセス制御
AWS Organizations
AWS Organizations は、複数の AWS アカウントをまとめて管理するためのサービスです。
主な役割としては、次のようなものがあります。
- 複数アカウントの一括請求
- 組織単位でのアカウント管理
- ポリシーによる統制
OU は Organizational Unit の略で、アカウントを論理的にまとめる単位です。複数アカウントを部署や用途ごとに分けて整理し、請求やガバナンスをまとめて扱うときに使います。
IAM
IAM(Identity and Access Management) は、AWS リソースへのアクセスを安全に制御するための仕組みです。
IAM では、主に次の要素を使います。
- IAM ユーザ
- IAM グループ
- IAM ロール
- IAM ポリシー
ポリシーは、どのリソースに対してどの操作を許可または禁止するかを定義する JSON 形式の権限設定です。
ポリシーには、代表的に次の2種類があります。
- アイデンティティベース: IAM ユーザ、グループ、ロールにアタッチする
- リソースベース: S3 などのリソースにアタッチする
IAM では、これらのポリシーを通して、ユーザやロールがどの AWS リソースを使えるかを決めます。
IAM のロールとポリシー
IAM を理解するうえで、ロールとポリシーの違いは重要です。
整理すると、次のようになります。
- ポリシー: アクセス権限の内容
- ロール: その権限を引き受けて利用する IAM アイデンティティ
ロールは EC2 などの AWS サービスや別アカウントのユーザが引き受けることができ、必要な権限を一時的な認証情報として利用できます。ロールで何ができるかはポリシーで決まります。
VPCとネットワーク構成
リージョンとアベイラビリティーゾーン
AWS では、まず リージョン と アベイラビリティーゾーン(AZ) の関係を理解しておく必要があります。
- リージョンは独立した地理的な単位
- AZ は各リージョン内にある複数の独立したロケーション
リージョン同士は分離されており、1 つのリージョンの中には複数の AZ があります。アプリケーションを複数の AZ に分散させることで、単一障害点に強い構成を取りやすくなります。
Amazon VPC
Amazon VPC は、AWS 上に論理的に分離された仮想ネットワークを作るためのサービスです。
VPC を理解するうえで重要なのは次の点です。
- VPC は 1 つのリージョンに属する
- サブネットは 1 つの AZ に属する
- VPC は 1 つ以上のサブネットに分割できる
- サブネットは VPC を分割する IP アドレス範囲
- サブネットの役割はルート設定によって変わる
特に重要なのは、サブネットは 1 つの AZ の中に作られ、AZ をまたげない という点です。VPC の中でサブネットを分け、さらにルートテーブルによってパブリックサブネットとプライベートサブネットを作り分けます。
セキュリティグループとネットワーク ACL
Amazon VPC では、通信制御のために主に次の 2 つを使います。
- セキュリティグループ
- ネットワークアクセスコントロールリスト(ネットワーク ACL)
セキュリティグループについては、
- インスタンスレベル
- 関連付けたリソースに到達するトラフィックを制御する
- ステートフルである
- 許可ルールのみを持つ
という特徴があります。
一方、ネットワーク ACL については、
- サブネットレベル
- サブネットを出入りするトラフィックを制御する
- ステートレスである
- 許可ルールと拒否ルールの両方を持てる
- デフォルトのネットワーク ACL はインバウンドとアウトバウンドのトラフィックを許可する
という違いがあります。
つまり、セキュリティグループはインスタンス単位の制御、ネットワーク ACL はサブネット単位の制御として使い分けます。
VPC Labで確認した構成
ここまでの基礎を踏まえて、VPC Lab では実際に VPC 構成を作成して確認しました。
Lab の流れは次の通りです。
- VPC を作成する
- パブリックサブネットとプライベートサブネットを用意する
- ルートテーブルを確認する
- 追加のサブネットを 2 つ作り、ルートテーブルを関連付ける
- セキュリティグループを作成する
- Web サーバインスタンス(EC2)を作成する
- ブラウザでアクセスする
Labの全体構成
全体構成では、VPC の中にパブリックサブネットとプライベートサブネットがあり、
パブリック側にはインターネットゲートウェイ、プライベート側の外向き通信には NAT ゲートウェイを使う構成になっていました。
また、Web Server 1 はパブリックサブネット側に置かれていました。
ルートテーブル
ルートテーブルの確認画面では、パブリックサブネット側とプライベートサブネット側で 0.0.0.0/0 の向き先が異なっていました。
- パブリック側: インターネットゲートウェイ
- プライベート側: NAT ゲートウェイ
パブリックサブネットはインターネットゲートウェイへの直接経路を持ち、プライベートサブネットは NAT ゲートウェイ経由で外部へ出る構成になっています。この違いが、両者の役割を分けています。
セキュリティグループの作成
続いて、HTTP リクエストを許可するセキュリティグループを作成します。
作成画面では、
- セキュリティグループ名:
Web Security Group - 説明:
Enable HTTP access - インバウンドルール:
HTTP
といった設定が確認できます。
この設定によって、Web サーバへ HTTP でアクセスできる状態を作ります。
EC2の作成とアクセス確認
Web サーバインスタンス(EC2)の作成では、次の設定が重要です。
- Network: 作成した VPC を選択
- Subnet: パブリックサブネットを選択
- Auto-assign public IP:
Enable
Auto-assign public IP を有効にすることで、インスタンスにパブリック IPv4 アドレスが割り当てられ、ブラウザからアクセスできるようになります。
インスタンスの詳細画面でも、パブリック IPv4 アドレスが表示されていました。
最後に、ブラウザから実際にアクセスできることを確認します。
まとめ
AWS Academy では、基礎項目として
- アカウント管理: AWS Organizations
- 権限管理: IAM
- ネットワーク: Amazon VPC
- 通信制御: セキュリティグループ / ネットワーク ACL
を順に学び、最後に VPC Lab で実際の構成を確認しました。
今回の内容を通して、特に次の点を押さえられます。
- VPC はリージョンに属する
- サブネットは AZ に属する
- セキュリティグループはインスタンスレベルでステートフル
- ネットワーク ACL はサブネットレベルでステートレス
- パブリック側とプライベート側ではルートテーブルの向き先が違う
という点が確認できます。











