ネットワークセキュリティ

ACL(アクセス制御リスト) えーしーえる

アクセス制御ファイアウォールパケットフィルタリングルーターセキュリティポリシー許可・拒否
ACLについて教えて

簡単に言うとこんな感じ!

ACLは「誰に何をOKにして、誰をシャットアウトするか」を書いた”入場許可リスト”だよ!ネットワークの門番(ルーターやスイッチ)がこのリストを見て、通信を通すか・止めるかを判断するんだ。


ACLとは

ACL(Access Control List/アクセス制御リスト) とは、ネットワーク機器やOSが「どの通信・どのユーザーを許可し、どれを拒否するか」をルールとして列挙したリストのことです。ルーターやスイッチに設定し、通過するパケット(データのかたまり)を1件ずつリストと照らし合わせて「通す/止める」を判断します。

ITの世界では大きく2つの場面でACLという言葉が使われます。ひとつはネットワークACL(ルーターやファイアウォールパケットフィルタリング)、もうひとつはファイルシステムACL(WindowsやLinuxでファイル・フォルダへのアクセス権を細かく設定するもの)です。このエントリでは業務でよく話題になるネットワークACLを中心に解説します。

ACLを正しく設定することは、社内ネットワークを不正アクセスから守るファイアウォール的な役割を果たします。「外部から社内の経理サーバーへの直接アクセスは禁止」「特定のIPアドレスだけ許可」といったルールをACLとして記述することで、ネットワークの安全を保てます。


ACLの構造と仕組み

ACLはルールを上から順番に評価し、最初にマッチしたルールで処理が決まります。一度マッチしたら、それ以降のルールは読みません。

項目内容
エントリ(行)1つのルール。「送信元IP × 宛先IP × プロトコル × 動作」で構成
動作(Action)permit(許可)または deny(拒否)のどちらか
評価順序上のルールから順に照合。最初にマッチしたルールが適用される
暗黙のdenyどのルールにもマッチしなかったパケットは自動的に拒否(末尾に隠れている)

ACLの種類:標準 vs 拡張

Cisco製ルーターを例にした代表的な分類です。

種類番号の範囲チェック対象用途
標準ACL1〜99 / 1300〜1999送信元IPアドレスのみシンプルな送信元制御
拡張ACL100〜199 / 2000〜2699送信元IP・宛先IP・プロトコル・ポート番号細かい通信制御

覚え方:「上から読む門番」

ACLのルールは上から読んで最初に当たったルールが絶対です。よく起きるミスが「広い拒否ルールを上に書いてしまい、その下の許可ルールが永遠に読まれない」というもの。「細かいルールを上、大きなルールを下」 と覚えておきましょう。


歴史と背景

  • 1980年代後半:インターネットの普及とともに、ルーターで通信を制御する必要性が生まれる。Cisco IOS がACLを実装し、業界標準の設定方法として広まった
  • 1990年代:ファイアウォール専用機器が登場するが、ルーターのACLは安価・手軽な一次防衛線として引き続き広く活用される
  • 2000年代:ファイルサーバーやWindowsドメイン環境でも「ファイルシステムACL」として概念が応用される。NTFSのアクセス権管理などが代表例
  • 2010年代〜現在:クラウド環境(AWS・Azure・GCPなど)でもセキュリティグループネットワークACLとして概念が継承。クラウド時代にもACLの考え方は健在

ネットワークACLの動作フロー

パケットがルーターに届いてからACLで判定されるまでの流れを図解します。

ACL パケット評価フロー パケット到着 (外部 or 内部から) ルール1 と照合 (一番上のエントリ) マッチ? 条件に合う? YES ルール適用 permit → 通過 deny → 遮断 NO(次のルールへ) 暗黙の deny(全拒否) どのルールにも当たらなければ遮断

ネットワークACL vs セキュリティグループ(クラウド)

クラウド環境(AWSなど)では似た概念が複数あります。

比較項目ネットワークACL(オンプレ)AWSセキュリティグループAWSネットワークACL
適用対象ルーター・L3スイッチEC2インスタンス単位サブネット単位
ステートステートレス(行きと帰りを別々に設定)ステートフル(戻り通信を自動許可)ステートレス
評価順序上から順番全ルール評価してOR番号順(小さい方優先)
デフォルト暗黙のdeny全拒否全許可

関連する規格・RFC

規格・RFC番号内容
RFC 2460IPv6パケットフィルタリングの基本的な考え方に言及
RFC 3580IEEE 802.1X と ACL の連携(VLANへの動的ACL割り当て)
RFC 7492ネットワークデバイスのアクセス制御に関するガイドライン
NIST SP 800-41ファイアウォール・パケットフィルタリング(ACL含む)のガイドライン

関連用語

  • ファイアウォール — ACLと同じく通信を許可・拒否するが、より高度な状態管理やアプリ層の検査も行うセキュリティ機器
  • パケットフィルタリング — ACLが実現するネットワーク技術の総称。パケット単位で通信を制御する仕組み
  • ルーター — ACLを設定する主な機器。ネットワーク間のパケットを転送する
  • VPN — ACLと組み合わせて使われることが多い、安全な通信トンネルの技術
  • セキュリティグループ — クラウド環境におけるACLに相当するアクセス制御の仕組み
  • ゼロトラスト — 「何もかも信用しない」という考え方。ACLはゼロトラスト実現の手段の一つ