【VPCの基本】reInvent2017 NET201_Creating Your Virtual Data Center で初心に返る #reinvent

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

こんにちは。池田です。12月に入り、そろそろ来年のカレンダーを準備しておこうかなぁと思っていたところに、先輩が自作しためそ子さんカレンダーを送ってくれました。


素敵すぎます。

はじめに

re:Invet2017にて行われた「NET201_Creating Your Virtual Data Center」というセッションの内容について、公開されたスライドを参照しながらVPCの基本について自己学習用にまとめたものとなります。
掲載する解説については、原文を機械翻訳しつつ自分なりにまとめとして書き起こしたものであることを予めご承知おきください。

目次

  1. 本セッションで期待すること
  2. インターネットに接続されたVPCの作成手順
  3. IPアドレス範囲を選択する
  4. VPCのIPアドレス範囲の選択に関する注意点
  5. VPCサブネットとアベイラビリティゾーン(AZ)
  6. インターネットに接続する
  7. VPCの接続オプション
  8. オンプレミスネットワークへの接続
  9. VPCとその他のAWSリソース
  10. まとめ

本セッションで期待すること

  • VPCの概念を理解する
  • 基本的なVPCセットアップ
  • ニーズに合わせて仮想ネットワークを調整する方法について学ぶ

インターネットに接続されたVPCの作成手順

  • アドレス範囲の選択
  • アベイラビリティゾーンにサブネットを作成する
  • インターネットへのルートを作成する
  • VPC IGWとの間でトラフィックを認可する

IPアドレス範囲を選択する

  • CIDRの範囲の例:172.31.0.0/16

VPCのIPアドレス範囲の選択に関する注意点

  • 接続可能な他のネットワークと重複する範囲は避ける
  • 172.31.0.0/16 など
    推奨:RFC1918の範囲
    推奨:/ 16(65536アドレス)

VPCサブネットとアベイラビリティゾーン(AZ)

VPCサブネットの推奨事項

  • /16 VPC(65,536アドレス)
  • 少なくとも24個のサブネット(251個のアドレス)
  • 複数のサブネットを介してVPCごとに複数のアベイラビリティゾーン(AZ)を使用する

インターネットに接続する

VPCのルーティング

  • ルートテーブルには、パケットがどこに行くかのルールが含まれる
  • VPCにはデフォルトルートテーブルがある
  • 異なるルートテーブルを異なるサブネットに割り当てることができる

インターネットゲートウェイ(IGW)

  • インターネットに接続する場合は、インターネットゲートウェイ(IGW)にパケットを送信する

VPCのネットワークセキュリティ(セキュリティグループ)

  • セキュリティグループの例:WebサーバーすべてのHTTPトラフィックを許可する
  • セキュリティグループの例:バックエンドWebサーバーからのアプリケーショントラフィックのみを許可する
  • VPCのセキュリティグループその他の注意事項
    「最小特権の原則」に従う
    出力(アウトバウンド)および入力(インバウンド)のルールを作成

VPCの接続オプション

インターネットアクセスの制限

  • サブネットごとにルーティングルールを用意する

出力(アウトバウンド)のみインターネットアクセスを許可

  • NATgatewayを利用する

SSH踏み台サーバのセキュリティグループパターン

  • パブリックサブネットにSSH踏み台サーバとなるEC2インスタンスを配置
  • 踏み台サーバセキュリティグループを用意
    ポート22への接続は既知のIPアドレス(事業所など)からのみ許可
  • プライベートサブネットにSSHログイン対象サーバを配置
  • SSHアクセスセキュリティグループを用意
    ポート22への接続は踏み台サーバセキュリティグループからのみ許可

VPC間接続(VPCピアリング)

  • VPCピアリングの使用例:共有サービスVPC
  • 共通/コアサービス
    認証/ディレクトリ
    モニタリング
    ロギング
    リモート管理
    スキャニング

VPCピアリングを確立するまでの流れ

  • ステップ1:ピアリング要求を開始する
  • ステップ2:ピアリング要求を受け入れる
  • ステップ3:ピアリングされたVPCとの通信を開始

オンプレミスネットワークへの接続

AWS Direct Connect

  • オンプレミスネットワークをVPCに拡張する

AWS Virtual Private Network

  • Customer GatewayとVirtual Private GatewayによるIPSec接続

AWS VPNとAWS Direct Connect

  • 両方とも、ネットワークとVPC間の安全な接続を許可
  • 最高の可用性を実現するには両方を使う

VPCとその他のAWSリソース

VPC内のAWSサービス

  • VPC内のAmazon RDSデータベースがDNS名でアクセス可能
    mydb-cluster-1 ... .us-west-2.rds.amazonaws.com
  • VPC内のアプリケーション・ロード・バランサ

AWSサービスのVPCエンドポイント

  • Amazon S3とDynamoDB
    S3-bound trafficをVPCエンドポイントにルーティングする
  • VPCエンドポイントにおけるIAMポリシー
    Amazon S3またはAmazon DynamoDBによるVPCの操作を制限する
  • S3バケットのIAMポリシー
    VPCエンドポイントからのみアクセス可能
  • AWSサービス用のプライベートリンク

Amazon Route 53でのDNS

  • Amazon Route 53(DNSサーバ)を使用する
    DNSホスト名をEC2インスタンスに自動割り当て プライベートホストゾーン

VPCフローを使用したVPCトラフィックのロギング

  • Amazon CloudWatchログのVPCトラフィックメタデータ
    セキュリティグループルールへの影響の可視化
    ネットワーク接続のトラブルシューティング
    トラフィックを分析
  • VPCフローログのセットアップ
    VPCの管理コンソール上から「Create Flow Log」ボタンで作成できる

まとめ

このように整理してみると、AWSリソースの中でも基本的なVPCについても、普段意識していなかった機能やルールがいくつもあると改めて認識できました。
いつでも基本を忘れず、より安全により効果的なAWSリソースの利用ができるよう心がけていこうと思います。