🗂

デフォルト削除からの復活劇 AWS完全初心者がVPC構築に挑戦!

に公開

はじめに

こんにちは、さくらです🌸

AWS学習を始めて3回目のブログです!
今度は**VPC(Virtual Private Cloud)**構築に挑戦しました!

実は、EC2を作ろうとしたときにデフォルトのインターネットゲートウェイを誤って削除してしまい、VPCから作り直すことになったのですが...

結果的に、これが最高の学習機会になりました!

今回の目標

  • VPCの基本概念を理解する
  • パブリックサブネットでWebサーバー用のネットワークを構築
  • デフォルトVPCとの違いを体感する

VPCとは何か?

初心者の理解:VPC = 自分専用のネットワーク空間

**VPC(Virtual Private Cloud)**とは、AWS上に作る「自分専用のネットワーク空間」のことです。

例えるなら、マンションの一室を借りるような感覚:

  • 建物全体 = AWSクラウド
  • 自分の部屋 = VPC
  • 部屋のレイアウト = サブネット設計
  • 玄関の鍵 = セキュリティグループ

この「部屋」の中に、EC2インスタンス(サーバー)やRDS(データベース)などを配置していくイメージです。

実際のVPC構築手順

STEP 1: VPC作成の準備

AWSコンソールで「VPC」を検索し、「VPCを作成」をクリック。

今回はVPCウィザードを使用して、必要なリソースを一括作成します。


STEP 2: VPC設定

基本設定

- 作成するリソース: VPCなど(ウィザード使用)
- 名前タグ: sakura-saku-aws-vpc
- IPv4 CIDRブロック: 10.0.0.0/16
- IPv6 CIDRブロック: なし

ネットワーク設計

- アベイラビリティーゾーン: 2つ(冗長性のため)
- パブリックサブネット: 2つ
- プライベートサブネット: 0つ(今回は作成しない)
- NATゲートウェイ: なし(料金節約のため)

STEP 3: 作成実行

「VPCを作成」をクリックすると、以下のリソースが自動作成されます:

作成されたリソース一覧

  • ✅ VPC本体
  • ✅ パブリックサブネット × 2(ap-northeast-1a、1c)
  • ✅ インターネットゲートウェイ
  • ✅ ルートテーブル(パブリック用)
  • ✅ デフォルトセキュリティグループ

約2分で完了し、きれいなネットワーク図も表示されました!

実践中に浮かんだ3つの疑問

疑問1:今回はなぜプライベートサブネットを作成しないのか?

VPC作成時に「プライベートサブネットの数: 0」に設定しましたが、なぜでしょうか?

調べて分かったこと:

  • パブリックサブネット = インターネットから直接アクセス可能
  • プライベートサブネット = インターネットから直接アクセス不可
  • 今回の目的:Webサーバー構築 = インターネットからアクセスしたい

具体的な使い分け:

  • パブリックサブネット:Webサーバー、ロードバランサー
  • プライベートサブネット:データベース、アプリサーバー

今回はWebサーバーを公開したいので、パブリックサブネットのみで十分でした。

初心者ポイント:
「なんでもパブリックにすればいいじゃん」と思いがちですが、データベースなどは外部からアクセスされると危険なので、プライベートサブネットに置くのがセキュリティのベストプラクティスです。

疑問2:ルートテーブルとセキュリティグループを作成する理由は?

VPCを作ると自動で「ルートテーブル」と「セキュリティグループ」が作成されますが、これらの役割は何でしょうか?

調べて分かったこと:

ルートテーブル = 道路標識

  • 「このIPアドレス宛の通信はどこに向かうべきか」を決めるルール
  • パブリックサブネット用のルートテーブルには「0.0.0.0/0 → インターネットゲートウェイ」というルートが設定される
  • これにより「インターネットへの通信は全てインターネットゲートウェイ経由で」という設定になる

セキュリティグループ = バーチャルファイアウォール

  • EC2インスタンスレベルでの通信制御
  • デフォルトでは「すべての通信を拒否」
  • 必要な通信のみを明示的に許可する(ホワイトリスト方式)

実際の設定例:

インバウンドルール:
- SSH(ポート22):自分のIPアドレスのみ許可
- HTTP(ポート80):全世界に許可(0.0.0.0/0)

アウトバウンドルール:
- 全ての通信を許可(デフォルト)

初心者ポイント:
「ルートテーブル」と「セキュリティグループ」の違いが最初は分かりにくいですが、「ルートテーブル = 道案内」「セキュリティグループ = 入館証チェック」と覚えると理解しやすいです。

疑問3:今回はなぜNATゲートウェイを作成しないのか?

VPC作成時に「NATゲートウェイ: なし」を選択しましたが、NATゲートウェイとは何でしょうか?

調べて分かったこと:

  • NAT = Network Address Translation
  • 役割:プライベートサブネットからインターネットへの片方向通信を可能にする
  • 使用例:プライベートサブネットのサーバーがソフトウェアアップデートをダウンロードする

NATゲートウェイの仕組み:

プライベートサブネット → NATゲートウェイ → インターネット
                    ←              ←
(レスポンスのみ受信可能、新規接続は不可)

今回作成しない理由:

  1. プライベートサブネットを作らないため不要
  2. 料金が発生する(約$45/月)
  3. 学習段階では不要な機能

初心者ポイント:
NATゲートウェイは「プライベートサブネットのサーバーがインターネットにアクセスしたいけど、インターネットからは直接アクセスされたくない」という場合に使用します。今回のように「Webサーバーを公開したい」という目的では不要です。

デフォルトVPCとの違い

今回、デフォルトVPCを削除してしまったことで、自作VPCとの違いがよく分かりました。

デフォルトVPC

  • AWSアカウント作成時に自動で作成される
  • すぐにEC2インスタンスを起動できる
  • 設定内容が見えにくい

自作VPC

  • 自分で設計・作成する
  • 各リソースの役割を理解して構築
  • セキュリティや運用を意識した設計が可能

学習効果:
デフォルトVPCを使っていたら「なんとなく動く」で終わっていましたが、自分で作ることでネットワークの基礎がしっかり理解できました。

初心者だからこその気づき

今回のVPC構築を通して気づいたのは、**「失敗から学ぶ価値」**です。

デフォルトVPCを削除してしまった「失敗」が、結果的に:

  • VPCの概念理解につながった
  • ネットワークの基礎が身についた
  • AWSの全体像が見えるようになった
  • 本格的なインフラ構築への第一歩になった

専門書では得られない実体験:

  • 設定画面の見方
  • エラーメッセージとの向き合い方
  • 「なぜこの設定が必要なのか?」という疑問を持つ重要性

次のステップ

VPCが完成したので、次はいよいよEC2インスタンスの作成です!

今度は自作VPCの中にWebサーバーを構築して、インターネットに公開してみます。

今後の学習予定:

  1. EC2インスタンス作成(自作VPC内)
  2. SSH接続の習得
  3. Webサーバー(Apache)の設定
  4. セキュリティグループの詳細設定

まとめ

今回学んだこと:

  • VPCは「自分専用のネットワーク空間」
  • パブリック/プライベートサブネットの使い分け
  • ルートテーブルとセキュリティグループの役割
  • NATゲートウェイの用途と今回不要な理由

AWS学習の気づき:

  • 失敗こそ最高の学習機会
  • 「なぜ?」を大切にする姿勢
  • 実際に手を動かすことの重要性

デフォルトVPC削除という「ピンチ」が「チャンス」になった今回。
初心者だからこそ持てる疑問を大切に、引き続きAWS学習を進めていきます!

3ヶ月後の目標:SAA取得 → AWSエンジニア転職
一歩ずつ、着実に前進中です🌸


関連記事:

学習記録:

  • 1回目:AWSアカウント作成、基本概念理解
  • 2回目:S3静的ホスティング
  • 3回目:VPC構築 ← 今回
  • 4回目:EC2構築予定

Discussion