デフォルト削除からの復活劇 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ゲートウェイ → インターネット
← ←
(レスポンスのみ受信可能、新規接続は不可)
今回作成しない理由:
- プライベートサブネットを作らないため不要
- 料金が発生する(約$45/月)
- 学習段階では不要な機能
初心者ポイント:
NATゲートウェイは「プライベートサブネットのサーバーがインターネットにアクセスしたいけど、インターネットからは直接アクセスされたくない」という場合に使用します。今回のように「Webサーバーを公開したい」という目的では不要です。
デフォルトVPCとの違い
今回、デフォルトVPCを削除してしまったことで、自作VPCとの違いがよく分かりました。
デフォルトVPC
- AWSアカウント作成時に自動で作成される
- すぐにEC2インスタンスを起動できる
- 設定内容が見えにくい
自作VPC
- 自分で設計・作成する
- 各リソースの役割を理解して構築
- セキュリティや運用を意識した設計が可能
学習効果:
デフォルトVPCを使っていたら「なんとなく動く」で終わっていましたが、自分で作ることでネットワークの基礎がしっかり理解できました。
初心者だからこその気づき
今回のVPC構築を通して気づいたのは、**「失敗から学ぶ価値」**です。
デフォルトVPCを削除してしまった「失敗」が、結果的に:
- VPCの概念理解につながった
- ネットワークの基礎が身についた
- AWSの全体像が見えるようになった
- 本格的なインフラ構築への第一歩になった
専門書では得られない実体験:
- 設定画面の見方
- エラーメッセージとの向き合い方
- 「なぜこの設定が必要なのか?」という疑問を持つ重要性
次のステップ
VPCが完成したので、次はいよいよEC2インスタンスの作成です!
今度は自作VPCの中にWebサーバーを構築して、インターネットに公開してみます。
今後の学習予定:
- EC2インスタンス作成(自作VPC内)
- SSH接続の習得
- Webサーバー(Apache)の設定
- セキュリティグループの詳細設定
まとめ
今回学んだこと:
- VPCは「自分専用のネットワーク空間」
- パブリック/プライベートサブネットの使い分け
- ルートテーブルとセキュリティグループの役割
- NATゲートウェイの用途と今回不要な理由
AWS学習の気づき:
- 失敗こそ最高の学習機会
- 「なぜ?」を大切にする姿勢
- 実際に手を動かすことの重要性
デフォルトVPC削除という「ピンチ」が「チャンス」になった今回。
初心者だからこそ持てる疑問を大切に、引き続きAWS学習を進めていきます!
3ヶ月後の目標:SAA取得 → AWSエンジニア転職
一歩ずつ、着実に前進中です🌸
関連記事:
学習記録:
- 1回目:AWSアカウント作成、基本概念理解
- 2回目:S3静的ホスティング
- 3回目:VPC構築 ← 今回
- 4回目:EC2構築予定
Discussion