今回は ACL の入門として、まずは基本の考え方を整理しました。
最初は少し難しそうに見えましたが、学んでみると ACL は通信を許可するか、拒否するかを決めるためのルールだと分かってきました。
ACL は Access Control List の略で、permit は許可、deny は拒否を表します。
ACLの超基本ルール

今回いちばん大事だと感じたのは、ACL は上から順番に評価されるという点です。
ルールは上から1つずつ確認され、最初に一致したものが採用されます。つまり、下の行に正しい設定があっても、その前に一致してしまえば、そこで判定は終わります。
さらに ACL には最後に暗黙の denyがあるため、明示的に許可されなかった通信は最後に拒否されます。ここは ACL の基本として最初にしっかり押さえておきたいところです。
Standard ACL と Extended ACL の違い

Standard ACL は、送信元IPアドレスだけを見て判断する ACL です。
一方、Extended ACL は、送信元・宛先・プロトコルなどを見て、より細かく判断できます。
自分なりには、Standard ACL は「誰から来た通信か」を見るもの、Extended ACL は「誰が、誰に、どんな通信をするか」まで見るものと考えると分かりやすいと感じました。
| 項目 | Standard ACL | Extended ACL |
|---|---|---|
| 何を見て判断するか | 送信元IPアドレスだけ | 送信元IP、宛先IP、プロトコルなど |
| できること | 大まかな通信制御 | より細かい通信制御 |
| イメージ | 「誰から来たか」を見る | 「誰が、誰に、どんな通信をするか」を見る |
| 置き場所の基本 | 宛先に近い場所 | 送信元に近い場所 |
| 番号帯 | 1〜99、1300〜1999 | 100〜199、2000〜2699 |
比較してみると、Standard ACL はシンプルで分かりやすい反面、見られる情報が少ないため、制御も大まかになります。
一方で Extended ACL は条件を細かく指定できるため、より実践的な制御に向いています。
in と out の意味

ACL では in と out の意味も大切です。
- in:そのインターフェースに入ってくる通信をチェックする
- out:そのインターフェースから出ていく通信をチェックする
最初は少し混乱しましたが、「入るときに見るのが in、出るときに見るのが out」と覚えると整理しやすいと思いました。
どこに置くかの基本

ACL は、置き場所の考え方も大切です。
- Standard ACL:宛先に近い場所に置くのが基本
- Extended ACL:送信元に近い場所に置くのが基本
Standard ACL は送信元しか見られないため、早い場所で止めると必要な通信まで止めやすくなります。反対に Extended ACL は細かく条件を指定できるので、不要な通信を早めに止めるのに向いています。
ACL番号の考え方

最後に、ACL の番号帯も整理しました。
- Standard ACL:1〜99 と 1300〜1999
- Extended ACL:100〜199 と 2000〜2699
- 名前付き ACL:番号ではなく名前で管理する形式
最初は「1 は Standard、100 は Extended」とだけ覚えたくなりますが、実際には番号帯で分かれていると理解しておくのが大切だと思いました。
まとめ
今回の学習でまず押さえたかったのは、ACL は通信を許可するか拒否するかを決めるルールであり、上から順番に評価され、最初に一致したルールが採用されること、そして最後には暗黙の deny があるという点です。
今回の要点をまとめると、次の通りです。
- ACL は通信を許可・拒否するためのルール
- 上から順番に評価され、最初に一致したルールが採用される
- 最後には暗黙の deny がある
- Standard ACL は送信元だけ、Extended ACL は送信元・宛先・プロトコルなどを見られる
- in は入ってくる通信、out は出ていく通信をチェックする
- Standard ACL は宛先側、Extended ACL は送信元側に置くのが基本
- ACL は1や100だけではなく、番号帯で分類される
今回はまだ入口ですが、まずは「どの通信を、どこで、どう判定するのか」という考え方をつかむことが大切だと感じました。今後は実際の設定例も見ながら、さらに理解を深めていきたいと思います。

コメント