Amazon Web Services

セキュリティグループ vs ネットワークACL

セキュリティグループ と ネットワークACL の違い

セキュリティグループは「インスタンス単位で設定するファイアウォール機能」で、
ネットワークACLは「サブネット単位で全インスタンスに適用するファイアウォール機能」です。

どちらもVPC内のネットワーク転送を細かく制御するために使われます。

セキュリティグループ

EC2インスタンスなどに適用するファイアウォール機能で、主にVPCリソースのトラフィックを制御するのに使われます。

複数インスタンスにも適用でき、送信元にはIPアドレスの範囲やセキュリティグループIDを指定することも可能です。
※設定は即時に反映されます。

デフォルトの通信設定

インバウンド :すべて拒否
アウトバウンド:すべて許可
※インバウンドは(EC2インスタンスから出る)内向きの通信で、アウトバウンドは(外部からEC2インスタンスへ向かう)外向きの通信です。

セキュリティグループは定義した通信のみを許可する「ホワイトリスト形式」です。
[例] DBに接続できるIPアドレスやEC2インスタンスを個別に指定。プロトコル(TCPやUDP), ポート番号なども指定可。

ルール

すべてのルールが適用されます。

EC2インスタンスに複数のセキュリティグループ(複数ルールの集合)を適用することも可能です。

ステータス

ステートフル。
(1つの通信で受信側を設定すれば送信も制御可能で、戻りの設定は不要)

ネットワークACL

サブネット単位で設定するファイアウォール機能で、主にサブネット間の制御に使われます。
[例] パブリックサブネットからDBが配置されたプライベートサブネットへの通信を制限。

ネットワークACLはサブネット新規作成時にデフォルトで1つ用意されます。

デフォルトの通信設定

インバウンド :すべて許可
アウトバウンド:すべて許可
※インバウンドは(EC2インスタンスから出る)内向きの通信で、アウトバウンドは(外部からEC2インスタンスへ向かう)外向きの通信です。

ネットワークACLは定義した通信のみを拒否する「ブラックリスト形式」です。
[例] 特定IPアドレスからのアクセスを制限。

個別にカスタムネットワークACLを作成した場合は、インバウンド / アウトバウンドの両方が拒否されるので注意が必要です。

ルール

各ルールに割り当てられた番号順に適用されます。

ステータス

ステートレス。
(1つの通信で受信と送信を制御する場合、それぞれの設定が必要です)

セキュリティグループ vs ネットワークACL

VPC内でセキュリティグループとネットワークACLを両方とも適用している場合「どちらのルールでも許可されないと拒否になる」ので注意が必要です。
[例] セキュリティグループで許可, ネットワークACLで拒否の場合、拒否になります。

ピックアップ記事

  1. 最速で理解したい人のためのIT用語集

関連記事

  1. Amazon Web Services

    Pythonを用いたAmazon S3の署名付きURLの発行と、発行時の注意点

    こんにちは、エクスチュアの黒岩と申します。つい最近、AWSア…

  2. Amazon Web Services

    System Managerを利用したVPC内Redshiftへの接続

    Redshiftを構築するにあたって、private subnet内で…

  3. Amazon Web Services

    Amazon Redshift ビルド168まとめ

    この記事はAmazon Redshiftのアップデート情報からどのよう…

  4. Amazon Web Services

    ELB (ALB・NLB・CLB) をサクッと学ぶ

    ELB(Elastic Load Balancing)とは3種類の…

  5. Amazon Web Services

    Databricks Community Editionを使ってApache Sparkを無料で学ぶ…

    こんにちは、エクスチュアの權泳東(権泳東/コン・ヨンドン)です。…

  6. Adobe Analytics

    Adobe Analytics: DWHレポートをAWSのS3バケットに配信する

    こんにちは、エクスチュアの權泳東(権泳東/コン・ヨンドン)です。…

最近の記事

  1. モダンデータスタックなワークフローオーケストレーションツール…
  2. Streamlit in Snowflakeによるダッシュボ…
  3. Streamlit in SnowflakeによるStrea…
  4. Streamlitを使った簡単なデータアプリケーション作成ガ…
  5. 生成AI機能を活かしたデータカタログ製品「Secoda」を試…
  1. Google Tag Manager

    Google Tag Manager: 離脱リンクのクリックをトリガーにする
  2. ObservePoint

    Webサイトのプライバシー検証 (6/6): 知らない国やドメインにデータを送っ…
  3. Python

    わかりやすいPyTorch入門③(手書き数字認識と精度の向上)
  4. IT用語集

    パス、絶対パス、相対パス、ルートパスって何?
  5. 海外情報

    【TC19ブログ】Tableau Conference 2019 3日目レポート…
PAGE TOP