前提
VPCについて学んだことを書いていきます。
本題
VPCとは?
・アカウントに紐づく仮想ネットワーク空間
・他のVPCと論理的に区別されている
VPCはAZ(アベイラビリティーゾーン)を跨げるが、リージョンは跨げない。
リージョン = 国
AZ = データセンター
・サブネット
大きなネットワークを複数の小さなネットワークに分割管理セキュリティレベルを高める
サブネットはAZを跨ぐことはできない。
サブネットの分割単位は/24がおすすめ。
片方のデータセンターに何かしらの障害が発生した場合でももう片方のデータセンターでサービスを継続できる。
VPCのなかにAZを2つ使用。それぞれのデータセンターにサブネットを2つずつ作成。
パブリックサブネット
インターネットと通信を行う目的で作られたサブネット
プライベートサブネット
インターネットと接続せず、内部の接続のみを目的に作られたサブネット
/16 ←CIDR(サイダー)表記
第3オクテット、第4オクテットが自由に設定できる。
/24
第4オクテットを自由に設定できる。
0〜255まで使用できる。
※最後の4IPと最後の1IPはAWSが予約しているため使用できない。
/32
特定のIPアドレスを示すことになる
/8
第2、第3、第4オクテットが自由に設定できる。
ルートテーブルとは?
サブネットに関連付けて使用するものでサブネットから外にでる通信をどこに向けて発信するか決めるルール、定義のこと。
サブネットはルートテーブルを最低でも何か一つ設定しなければならない。
デフォルトからあるルートテーブルは「メインルートテーブル」と呼ぶ。
メインルートテーブルの使用は控える。
インターネットゲートウェイ(IGW)
VPCにアタッチして使用するネットワークコンポーネントでEC2インスタンスはインターネットへ通信できるようになる。
インスタンスがインターネットにアクセスするには、インスタンスにElasticIPかPublicIPをアタッチしなければならない。
ElacticIP
→インスタンスにアタッチ・デタッチ可能で、静的なインターネットと通信することができるIPアドレス。
※インスタンスが再起動、停止、終了した場合も同じIPアドレスで使用ができる。
PublicIP
→AWSのIPアドレスプールより割り当てられるインターネットと通信することができるIPアドレス。
EC2インスタンスはVPC内のIPレンジしか認識できない仕様となっている。
セキュリティグループ
EC2インスタンス単位で設定。(許可ウォールを設定する)
ポート22、 10.0.0.1
ポート22、 All
全てのポート22の通信が許可される。
ネットワークACL
サブネット単位で設定するファイアーオール
ルールは番号で管理され、小さい番号から順次強化されていく。
マッチした瞬間に以降の番号の許可はしない仕様になっている。
リールの最後には暗黙のDENYが待ち受けている。
このルールは削除することはできない。