比較は以下の表の通りとなります。
比較表 | セキュリティグループ | ネットワークACL |
適用先 | 各インスタンス (EC2、RDS、ELBなど) に適用。インスタンス単位。 | サブネットに適用。 |
制御の種類 | 許可ルールのみ。 | 許可及び拒否。 |
ステート | ステートフル。(状態を覚えているとうこと。つまり行きのパケットに対する戻りのパケットも自動的に許可される)。 | ステートレス(状態を覚えていない。行きと戻りの両方のルールの指定が必要。戻りの設定を忘れると通信に失敗する。) |
デフォルト | ・セキュリティグループ外からのインバウンドはすべて拒否。 ・セキュリティグループ外へのアウトバウンドはすべて許可。 ・セキュリティグループ内はインバウンド、アウトバウンド共に許可。 | ・インバウンド、バウトバウンドすべて許可。(デフォルトのACL) ・インバウンド、バウトバウンドすべて拒否。(カスタムのACL) |
特徴 | インスタンス起動中でもセキュリティグループの設定は変更可能。ただし他のセキュリティグループへ移動することはできない。(最新版で要確認) | - |
方式 | ホワイトリスト方式(許可のみ追加可能なため) | ホワイトリスト方式/ブラックリスト方式 ・原則拒否して許可のみ追加(ホワイトリスト) ・原則許可して拒否のみ追加(ブラックリスト) |
適用順番 | 定義したルールをすべて適用 | 上から順にルールを適用 |
注意事項 | 複数のセキュリティグループに属することが可能。 | エフェメラルポートの対応が必要。(一般的に 1024-65535が戻りポートとして使用される。ステートレスなためこのポートも許可する必要あり。) |
結果として同一サブネット内の通信はセキュリティグループのみのフィルタリングとなります。
外部から通信する場合はネットワーACL, セキュリティグループ両方を通過するため、ポートは両方で許可されている必要があります。
AWS まぎわらしい用語一覧へ戻る