インフラ

VPCをつくる前に見てほしいVPCアンチパターン

VPCアンチパターン

こんにちは、ちゃりおです。

勉強会や資格勉強で、最近VPCについて考えることが多いです。

今回は、VPCを作成する際に個人的によくないと思っていることを書いてみます。

ちゃりお
ちゃりお
VPCのアンチパターンです

本番環境でデフォルトVPCを使っている

デフォルトVPCは、アカウントを作成した際最初からあるVPCです。

こちらは、「すぐに、インターネットに接続できるようにする」ことを目的に作られた特別なVPCです。
そのため、作成した際に必ずパブリックサブネットになります。
(IGWがデフォルトで割り振られる)

ルートテーブルのIGWのルートを消せば、プライベートサブネットにすることも可能です。
しかし、本来の用途と違うので、プライベートサブネットが必要な場合は別にVPCを作成するほうがいいです。

本番環境でデフォルトVPCを使っていると、「インターネットと直接やりとりする必要のないリソースがパブリックサブネットにいる」という自体も起きる可能性があります。

例えばDBサーバ(RDS)をおいた場合、セキュリティグループの設定を間違えたらインターネットからもアクセスできてしまいます。

セキュリティ的なリスクもあるので、本番環境は新しいVPCに作りましょう。

ステージング環境と本番環境が同一VPC内にいる

VPCを作成するのを面倒くさがって、ステージング環境と本番環境が同一VPCに作成してしまったパターンです。

  • ステージング環境に攻撃を受けた際、本番環境にも影響がでる
  • 通信経路・セキュリティグループがカオスになる
  • ステージング環境と本番環境のネットワーク構成に差異がでる

「ステージング環境に攻撃を受けた際、本番環境にも影響がでる」
ステージング環境のほうがセキュリティがゆるいケースが多いと思います。
同一VPCだと、ステージング環境のいずれかのサーバに侵入された際そのまま本番にもアクセスできる可能性があります。

VPCを分けることで、ネットワーク的に分離することが可能です。
そのため、VPC内に影響をおさえることができます。

「通信経路・セキュリティグループがカオスになる」
VPC内のセキュリティグループが増えてしまうので、運用がしづらいです。

「ステージング環境と本番環境のネットワーク構成に差異がでる」
別VPCにすれば、プライベートIPアドレスも同一な構成にすることが可能です。

アカウントごとに環境を分けるパターンもありますが、最低限VPCは分けたいものです。

まとめ

VPCのアンチパターンについて書いてみました。
まだまだ、ありそうですが今回は2点です。

  • 本番環境でデフォルトVPCを使っている
  • ステージング環境と本番環境が同一VPC内にいる

VPCをあとから変更するのは、労力が大きいので構築する段階で
上記のことは気をつけたいです。

【AWS入門】VPCについて解説してみるこんにちは、ちゃりおです。 VPCはAWS使用する際にほぼ必須のサービスです。 しかし、「VPCとは何ですか」という質問を受けうまく答...
aws
これからAWSを勉強する人へ 〜AWSを勉強する3つのメリット〜インフラって範囲が広くて、「何を勉強すればいいか」わからないですよね。 個人的には、AWSを勉強したのが一番役に立っています。 今回は...
aws
AWS初心者が3週間でAWSソリューションアーキテクト(SAA)を取った勉強法こんにちは、ちゃりお(@chari7311)です! 以前社内の事情でAWSソリューションアーキテクトを3週間で取るよう言われました。 ...

参考書籍

AmazonでAWSの本を見てみる!!