ACL / ファイアウォールルールの基本構成と設計原則

  • URLをコピーしました!

ACL(Access Control List)およびファイアウォールルールは、ネットワークにおける通信制御の根幹を担う仕組みです。 「どの通信を許可し、どの通信を拒否するか」を明確に定義することで、ネットワークの安全性と可用性を確保します。

目次

ACLとは?

ACL(アクセス制御リスト)は、通信を通す・遮断するための条件リストです。 ルータやスイッチなどに設定され、特定の条件(IPアドレス・ポート番号・プロトコルなど)に基づいて通信の許可/拒否を行います。

ACLの主な用途

  • 特定のIPアドレスからのアクセス制御
  • ネットワーク間の通信制御
  • 不要なトラフィックの遮断
  • ファイアウォールやNAT設定の補助

ACLはシンプルながら、セキュリティの第一防衛線として非常に重要な役割を持ちます。

ACLの種類

種類特徴主な用途
標準ACL(Standard ACL)送信元IPアドレスのみで制御単純なアクセス制御(例:特定の端末をブロック)
拡張ACL(Extended ACL)送信元・宛先IP、プロトコル、ポート番号などを指定可能詳細な通信制御(例:特定のポートのみ許可)

ACLの基本構文(Cisco IOS例)


# 標準ACL(送信元IPのみ)
access-list 10 permit 192.168.1.0 0.0.0.255
access-list 10 deny any

# 拡張ACL(送信元・宛先・ポートを指定)
access-list 101 permit tcp 192.168.1.0 0.0.0.255 any eq 80
access-list 101 deny ip any any

ACLは上から順に評価され、最初に一致したルールで動作します。 最後には暗黙の「deny any」が存在するため、明示的に許可ルールを定義しなければ通信は遮断されます。

ACLの評価順序と設計原則

ACLでは、ルールの順序が非常に重要です。 最初に一致したルールが適用されるため、誤った順序により意図しない遮断が発生することがあります。

設計原則

  • ① 具体的なルールを上に、あいまいなルールを下に
    例:特定IPの許可 → 全体の拒否の順に記述。
  • ② 必要最小限の許可ルールを定義する
    セキュリティ強化のため、基本は「deny all」ベースで考える。
  • ③ コメントや番号管理を徹底する
    大規模ACLでは可読性を高めることが重要。

ACLの適用方向(インバウンド/アウトバウンド)

方向説明適用例
Inbound(入力方向)ルータに入ってくる通信に対して適用外部からのアクセス制御(例:外部→内部通信の制限)
Outbound(出力方向)ルータから出ていく通信に対して適用内部から外部へのアクセス制御(例:内部→外部通信の制御)

ファイアウォールルールとの違い

ACLはルータなどで使われる基本的なアクセス制御機能ですが、ファイアウォールはACLをさらに拡張・自動化したものです。

項目ACLファイアウォール
制御単位IP / ポートベースアプリケーション / セッションベース
状態管理なし(ステートレス)あり(ステートフル)
高度な機能限定的IPS, DPI, URLフィルタなどを搭載

つまり、ACLは通信制御の「基礎」、ファイアウォールはそれを「高度化・自動化」した存在と言えます。

ファイアウォールルール設計の基本

① ゼロトラスト原則

すべての通信を信頼せず、明示的に許可された通信のみ通過させる。 初期状態は「すべて拒否(deny all)」とし、必要な通信のみ「許可(permit)」する形をとります。

② 通信の方向を明確化

どのゾーン間(内部→外部、DMZ→内部など)の通信を許可するかを明確にします。 ゾーンベースポリシーを設計する際は、図解で整理するとミスを減らせます。

③ ログ出力を活用

拒否ルールの下に「deny log」を設定することで、不審な通信や誤設定の検知が容易になります。

④ 定期的なレビュー

不要になったルールは定期的に削除し、ルールの肥大化や影響範囲の拡大を防ぐことが大切です。

設計例(ACL+ファイアウォールポリシー)


# 内部LANから外部へのHTTP通信のみ許可
access-list 110 permit tcp 192.168.1.0 0.0.0.255 any eq 80
access-list 110 deny ip any any log

# ファイアウォールポリシー例(ゾーンベース)
policy from inside to outside
 permit tcp 192.168.1.0/24 any port 80
 deny all log

この構成では、内部LANからインターネットへのHTTP通信のみを許可し、他の通信はすべてログ付きで拒否します。

まとめ

  • ACLは通信の許可/拒否を定義する基本的な制御リスト。
  • ルールは上から順に評価され、最初に一致した条件が適用される。
  • ファイアウォールはACLを拡張し、状態管理やアプリ制御を追加した仕組み。
  • 設計の基本は「最小権限」「明示的許可」「ログ出力」「定期見直し」。

ACLとファイアウォールはネットワークセキュリティの基礎です。 両者の仕組みと設計原則を理解することで、安全かつ効率的な通信制御を実現できます。

目次