IP 名前付きアクセス コントロール リスト
アクセス コントロール リスト(ACL)は、ネットワークを通過するパケットの動きを制御するためにパケット フィルタリングを実行します。パケット フィルタリングは、ネットワークへのトラフィックのアクセスを限定し、ユーザおよびデバイスのネットワークに対するアクセスを制限し、トラフィックがネットワークから流出するのを防ぐことで、セキュリティを提供します。IP アクセス リストによって、スプーフィングやサービス妨害攻撃の可能性を軽減し、ファイアウォールを介した動的で一時的なユーザ アクセスが可能になります。
IP 名前付きアクセス コントロール リスト機能により、ネットワーク管理者は、管理するアクセス リストを識別するための名前を使用することができます。
このモジュールでは、IP 名前付きアクセス コントロール リスト、およびその設定方法について説明します。
機能情報の確認
ご使用のソフトウェア リリースでは、このモジュールで説明されるすべての機能がサポートされているとは限りません。最新の機能情報と注意事項については、ご使用のプラットフォームとソフトウェア リリースに対応したリリース ノートを参照してください。このモジュールに記載されている機能の詳細を検索し、各機能がサポートされているリリースのリストを確認する場合は、このマニュアルの最後にある機能情報の表を参照してください。
プラットフォームのサポートおよびシスコ ソフトウェア イメージのサポートに関する情報を検索するには、Cisco Feature Navigator を使用します。Cisco Feature Navigator には、http://tools.cisco.com/ITDIT/CFN/ からアクセスできます。http://www.cisco.com/ のアカウントは必要ありません。
Cisco cBR シリーズ ルータに関するハードウェア互換性マトリクス
(注) |
Cisco IOS-XE の特定のリリースで追加されたハードウェア コンポーネントは、特に明記しない限り、以降のすべてのリリースでもサポートされます。
|
表 1 Cisco cBR シリーズ ルータに関するハードウェア互換性マトリクス
Cisco CMTS プラットフォーム
|
プロセッサ エンジン
|
インターフェイス カード
|
Cisco cBR-8 コンバージド ブロードバンド ルータ
|
Cisco IOS-XE リリース 16.5.1 以降のリリース
Cisco cBR-8スーパーバイザ:
-
PID:CBR-CCAP-SUP-160G
-
PID:CBR-CCAP-SUP-60G
-
PID:CBR-SUP-8X10G-PIC
|
Cisco IOS-XE リリース 16.5.1 以降のリリース
Cisco cBR-8 CCAP ライン カード:
-
PID:CBR-LC-8D30-16U30
-
PID:CBR-LC-8D31-16U30
-
PID:CBR-RF-PIC
-
PID:CBR-RF-PROT-PIC
-
PID:CBR-CCAP-LC-40G-R
Cisco cBR-8 ダウンストリーム PHY モジュール:
-
PID:CBR-D30-DS-MOD
-
PID:CBR-D31-DS-MOD
Cisco cBR-8 アップストリーム PHY モジュール:
-
PID:CBR-D30-US-MOD
-
PID:CBR-D31-US-MOD
|
IP 名前付きアクセス コントロール リストに関する情報
アクセス リストの定義
アクセス コントロール リスト(ACL)は、ネットワークを通過するパケットの動きを制御するためにパケット フィルタリングを実行します。パケット フィルタリングは、ネットワークへのトラフィックのアクセスを限定し、ユーザおよびデバイスのネットワークに対するアクセスを制限し、トラフィックがネットワークから流出するのを防ぐことで、セキュリティを提供します。IP アクセス リストによって、スプーフィングやサービス妨害攻撃の可能性を軽減し、ファイアウォールを介した動的で一時的なユーザ アクセスが可能になります。
また、IP アクセス リストは、セキュリティ以外の用途にも使用できます。たとえば、帯域幅制御、ルーティング アップデートのコンテンツの制限、ルートの再配布、ダイヤルオンデマンド(DDR)呼び出しのトリガー、デバッグ出力の制限、Quality of Service(QoS)機能のトラフィックの識別と分類などです。
アクセス リストは、少なくとも 1 つの permit ステートメント、および任意の 1 つまたは複数の deny ステートメントで構成される順次リストです。IP アクセス リストの場合、これらのステートメントは IP アドレス、上位層の IP プロトコルなどの IP パケットのフィールドに適用できます。
アクセス リストは名前または番号で識別および参照されます。アクセス リストはパケット フィルタとして動作し、各アクセス リストに定義されている条件に基づいてパケットがフィルタされます。
アクセス リストを構成した後でアクセス リストを有効にするには、アクセス リストをインターフェイスに適用するか(ipaccess-group コマンドを使用)、vty に適用するか(access-class
コマンドを使用)、またはアクセス リストを許容するあらゆるコマンドでアクセス リストを参照する必要があります。複数のコマンドから同じアクセス リストを参照できます。
次の構成では、branchoffices という名前の IP アクセス リストが 10 ギガビット イーサネット インターフェイス 4/1/0 上で構成され、着信パケットに適用されます。発信元アドレスとマスクのペアで指定されているネットワーク以外は、10 ギガビット イーサネット インターフェイス 4/1/0 にアクセスできません。ネットワーク 172.16.7.0 上の送信元から発信されるパケットの宛先に、制限はありません。ネットワーク 172.16.2.0 上の送信元から発信されるパケットの宛先は、172.31.5.4 にする必要があります。
ip access-list extended branchoffices
10 permit 172.16.7.0 0.0.0.3 any
20 permit 172.16.2.0 0.0.0.255 host 172.31.5.4
!
interface TenGigabitEthernet4/1/0
ip access-group branchoffices in
名前付きまたは番号付きアクセス リスト
すべてのアクセス リストは、名前または番号で識別されます。名前付きアクセス リストは、番号付きアクセス リストよりも便利です。タスクを思いだしやすく関連性がある、わかりやすい名前を指定できるためです。名前付きアクセス リストでは、ステートメントの順序を変更したり、ステートメントを追加したりできます。
名前付きアクセス リストは、番号付きアクセス リストではサポートされない次の機能をサポートします。
(注) |
番号付きアクセス リストを受け入れるコマンドの中には、名前付きアクセス リストを受け入れないコマンドがあります。たとえば、vty には番号付きアクセス リストだけを使用します。
|
IP アクセス リストの利点
アクセス コントロール リスト(ACL)は、ネットワークを通過するパケットのフローを制御するためにパケット フィルタリングを実行します。パケット フィルタリングによってユーザおよびデバイスのネットワークに対するアクセスを制限し、セキュリティの手段として利用できます。アクセス リストによってトラフィック数を減らすことで、ネットワーク リソースを節約できます。アクセス リストを使用した場合の利点は次のとおりです。着信 rsh および rcp 要求を認証する:アクセス リストは、デバイスへのアクセスを制御するように構成された認証データベース内のローカル ユーザ、リモート ホスト、およびリモート ユーザの識別を簡素化できます。Cisco ソフトウェアは認証データベースを使用して、リモート シェル(rsh)およびリモート コピー(rcp)プロトコルの着信要求を受け取ることができます。
-
不要なトラフィックまたはユーザをブロックする:アクセス リストを使用すると、インターフェイス上の着信パケットまたは発信パケットをフィルタできるため、送信元アドレス、宛先アドレス、またはユーザ認証に基づいてネットワークへのアクセスを制御できます。また、アクセス リストを使用して、デバイス インターフェイスで転送またはブロックするトラフィックの種類を決定することもできます。たとえば、電子メール トラフィックはネットワークでルーティングすることを許可し、すべての Telnet トラフィックはネットワークに入ることをブロックするようにアクセス リストを使用できます。
-
vty へのアクセスを制御する:インバウンド vty(Telnet)でのアクセス リストは、デバイスへの回線にアクセスできるユーザを制御できます。アウトバウンド vty でのアクセス リストは、デバイスからの回線が到達可能な宛先を制御できます。
QoS 機能のトラフィックを特定または分類する:アクセス リストは、Weighted Random Early Detection(WRED)および専用アクセス レート(CAR)の IP プレシデンスを設定することで、輻輳回避を提供します。また、クラスベース均等化キューイング(CBWFQ)、プライオリティ キューイング、カスタム キューイングのために輻輳管理を提供します。
-
debug コマンド出力を制限する:アクセス リストは、IP アドレスやプロトコルに基づいて debug 出力を制限できます。
-
帯域幅制御を提供する:低速リンクでのアクセス リストはネットワークでの過剰なトラフィックを防止できます。
NAT 制御を提供する:アクセス リストによって、ネットワーク アドレス変換(NAT)が変換するアドレスを制御できます。
-
DoS 攻撃の可能性を低減する:アクセス リストは、サービス妨害(DoS)攻撃の可能性を低減させます。ホストからのトラフィック、ネットワーク、またはネットワークにアクセスするユーザを制御するように IP 発信元アドレスを指定します。TCP インターセプト機能を設定することで、接続に関する要求でサーバにフラッディングが発生しないようにすることができます。
-
ルーティング アップデートの内容を制限する:アクセス リストによって、ネットワーク内で送信、受信、または再配布されるルーティング アップデートを制御できます。
-
ダイヤルオンデマンド コールをトリガーする:アクセス リストによって、ダイヤルおよび切断条件を適用できます。
アクセス リストのルール
アクセス リストには、次のルールが適用されます。
-
1 つのインターフェイス、1 つのプロトコル、1 つの方向につき、許可されるアクセス リストは 1 つだけです。
-
アクセス リストには少なくとも 1 つの permit ステートメントが含まれる必要があります。そうしないと、ネットワークに入るすべてのパケットが拒否されます。
-
アクセス リスト条件または一致基準の構成順序は重要です。パケットを転送するかブロックするかを決定するときに、Cisco ソフトウェアは、それぞれの条件ステートメントに対してステートメントの作成順にパケットをテストします。一致が見つかると、条件ステートメントはそれ以上チェックされません。同じ permit または deny ステートメントでも、順序が異なる場合、ある状況では通過し、別の状況では拒否されるパケットが生じる可能性があります。
-
アクセス リストを名前によって参照したときに、そのアクセス リストが存在しない場合は、すべてのパケットが通過します。インターフェイスまたはコマンドに空のアクセス リストを適用すると、ネットワークに対するすべてのトラフィックが許可されます。
-
標準のアクセス リストと拡張のアクセス リストの名前は同じにできません。
-
パケットが発信インターフェイスにルーティングされる前に、着信アクセス リストがパケットを処理します。ネットワークへのパケット アクセスを拒否するフィルタ条件がある着信アクセス リストは、ルーティング ルックアップ時のオーバーヘッドを削減します。構成されたフィルタ基準に基づいてネットワークへのアクセスを許可されたパケットはルーティング処理されます。着信アクセス リストの場合、permit ステートメントを構成するとパケットは受信後に処理され、deny ステートメントを構成するとパケットは破棄されます。
-
発信アクセス リストの場合、パケットの処理後にデバイスから送信されます。着信パケットは発信インターフェイスにルーティングされてから、発信アクセス リストで処理されます。発信アクセス リストの場合、permit ステートメントを構成するとパケットは出力バッファに送信され、deny ステートメントを構成するとパケットは破棄されます。
-
アクセス リストで、デバイスに到達するトラフィック、またはデバイス経由で送信されるトラフィックは制御できますが、デバイスが送信元のトラフィックは制御できません。
IP アクセス リストを作成する際に役立つヒント
意図しない結果を回避し、より効率的で有効なアクセス リストを作成するために役立つヒントを紹介します。
アクセス リストを作成してから、インターフェイス(または別の対象)に適用します。その理由は、存在しないアクセス リストをインターフェイスに適用してから、アクセス リストを設定すると、最初のステートメントが有効になり、それに続く暗黙の deny ステートメントによって即時のアクセスに問題が発生するおそれがあるためです。
アクセス リストを設定してから適用するもう 1 つの理由は、空のアクセス リストが適用されたインターフェイスはすべてのトラフィックを許可するためです。
すべてのアクセス リストには、少なくとも 1 つの permit ステートメントが必要です。そうでない場合、すべてのパケットは拒否され、トラフィックはまったく通過しません。
最初に(permit または deny ステートメントに対する)一致が見つかった後は条件のテストが終了するため、パケットが一致する可能性の高いステートメントをアクセス リストの先頭に配置すると処理にかかる時間とリソースが削減されます。最も頻繁に発生する条件を発生頻度の低い条件より前に配置します。
ネットワークまたはサブネットのより具体的な参照が、より全般的な参照よりも前に出現するように、アクセス リストを構成します。
まだ拒否されていないその他のパケットすべてを許可する場合、ステートメント permit any any を使用します。ステートメント permit any any を使用すると、実質的に、アクセス リストの末尾にある暗黙の deny ステートメントでその他すべてのパケットが拒否されることを防ぎます。最初のアクセス リスト エントリは、permit any any にしないでください。すべてのトラフィックが通過し、以降のテストに到達するパケットがなくなります。permit any any を指定すると、まだ拒否されていないすべてのトラフィックが通過します。
すべてのアクセス リストは、暗黙の deny ステートメントで終わりますが、明示的な deny ステートメント(たとえば、deny ip any any など)を使用することを推奨します。ほとんどのプラットフォームでは、show access-list コマンドを発行して拒否されるパケット数を表示し、アクセス リストが許可していないパケットに関する詳細情報を調査できます。明示的な deny ステートメントで拒否されたパケットのみがカウントされます。これは、明示的な deny ステートメントによって、より詳細なデータが生成されるためです。
- アクセス リストの作成中、または作成後に、エントリを削除する場合があります。
- 番号付きアクセス リストからはエントリを削除できません。削除しようとすると、アクセス リスト全体が削除されます。エントリを削除する必要がある場合、アクセス リスト全体を削除してから最初から作り直す必要があります。
- 名前付きアクセス リストからはエントリを削除できます。no permit または no deny コマンドを使用して、該当するエントリを削除します。
個々のステートメントの用途をひと目で確認および理解しやすくするために、remark コマンドを使用して、ステートメントの前後に役立つ注記を書き込むことができます。
特定のホストまたはネットワークに対するアクセスを拒否し、そのネットワークまたはホストの誰かがアクセスしようとしたかどうかを検出する場合、対応する log ステートメントを指定した deny キーワードを含めます。それによって、その送信元からの拒否されたパケットがログに記録されます。
このヒントは、アクセス リストの配置に適用されます。リソースを保存しようとすると、着信アクセス リストでは常にフィルタ条件を適用した後に、ルーティング テーブルの検索を行います。発信アクセス リストではフィルタ条件を適用する前に、ルーティング テーブルの検索を行います。
アクセス リストを適用する場所
アクセス リストは、デバイスの着信または発信インターフェイスに適用できます。アクセス リストを着信インターフェイスに適用すると、インターフェイスで着信するトラフィックが制御され、アクセス リストを発信インターフェイスに適用すると、インターフェイスから発信されるトラフィックが制御されます。
ソフトウェアは、着信インターフェイスでパケットを受信すると、アクセス リストで設定されているステートメントに対してパケットを検査します。アクセス リストがアドレスを許可している場合は、ソフトウェアはパケットを処理します。着信パケットをフィルタリングするためにアクセス リストを適用すると、フィルタリングされたパケットはデバイスに到達する前に廃棄されるため、デバイスのリソースを節約できます。
発信インターフェイスでは、アクセス リストはインターフェイスから転送(送信)されたパケットをフィルタリングします。発信インターフェイスで Rate-Based Satellite Control Protocol(RBSCP)の TCP アクセス コントロール リスト(ACL)を使用して、発信インターフェイスで TCP 確認応答(ACK)を受けるパケットの種類を制御できます。
debug コマンドを使用してアクセス リストを参照し、デバッグ ログの量を制限できます。たとえば、アクセス リストのフィルタリング基準または一致基準に基づいて、デバッグ ログを送信元または宛先のアドレスまたはプロトコルに制限できます。
アクセス リストを使用して、ルーティング アップデート、ダイヤルオンデマンド(DDR)、および Quality of Service(QoS)機能を制御することができます。
IP 名前付きアクセス コントロール リストの設定方法
IP 名前付きアクセス リストの作成
IP 名前付きアクセス リストを作成すると、発信元アドレスと宛先アドレス、またはアドレスと他の IP フィールドの組み合わせをフィルタリングすることができます。名前付きアクセス リストにより、分かりやすい名前の付いたアクセス リストを特定できます。
手順 | コマンドまたはアクション | 目的 |
---|
ステップ 1 | enable
例:
|
|
ステップ 2 | configure
terminal
例:
Device# configure terminal
|
グローバル コンフィギュレーション モードを開始します。
|
ステップ 3 | ip
access-list
extended
name
例:
Device(config)# ip access-list extended acl1
|
名前を使用して拡張 IP アクセス リストを定義し、拡張名前付きアクセス リストのコンフィギュレーション モードを開始します。
|
ステップ 4 | remark
remark
例:
Device(config-ext-nacl)# remark protect server by denying sales access to the acl1 network
|
(任意)アクセス リスト ステートメントに説明を追加します。
|
ステップ 5 | deny
protocol [source source-wildcard] {any
| host {address | name} {destination [destination-wildcard] {any
| host {address | name} [log]
例:
Device(config-ext-nacl)# deny ip 192.0.2.0 0.0.255.255 host 192.0.2.10 log
|
(任意)注釈で指定されたすべての条件に一致するパケットをすべて拒否します。
|
ステップ 6 | remark
remark
例:
Device(config-ext-nacl)# remark allow TCP from any source to any destination
|
(任意)アクセス リスト ステートメントに説明を追加します。
|
ステップ 7 | permit
protocol [source source-wildcard] {any
| host
{address | name} {destination [destination-wildcard] {any
| host {address | name} [log]
例:
Device(config-ext-nacl)# permit tcp any any
|
ステートメントで指定されたすべての条件に一致するパケットをすべて許可します。
|
ステップ 8 | アクセス リストにステートメントをさらに指定するには、ステップ 4 ~ 7 を繰り返します。
|
(注)
|
ステートメントによって明示的に許可されていないすべての送信元アドレスは、アクセス リストの末尾にある暗黙的な deny ステートメントで拒否されます。
|
|
ステップ 9 | end
例:
Device(config-ext-nacl)# end
|
拡張名前付きアクセス リストのコンフィギュレーション モードを終了し、特権 EXEC モードに戻ります。
|
ステップ 10 | show
ip
access-lists
例:
Device# show ip access-lists
|
現在のすべての IP アクセス リストの内容を表示します。
|
例:
以下は、 show
ip
access-lists コマンドの出力例です。
Device# show ip access-lists acl1
Extended IP access list acl1
permit tcp any 192.0.2.0 255.255.255.255 eq telnet
deny tcp any any
deny udp any 192.0.2.0 255.255.255.255 lt 1024
deny ip any any log
インターフェイスへのアクセス リストの適用
手順 | コマンドまたはアクション | 目的 |
---|
ステップ 1 | enable
例:
|
特権 EXEC モードをイネーブルにします。
|
ステップ 2 | configure terminal
例:
Device# configure terminal
|
グローバル コンフィギュレーション モードを開始します。
|
ステップ 3 | interface type number
例:
Device(config)# interface TenGigabitEthernet4/1/0
|
インターフェイスを指定し、インターフェイス コンフィギュレーション モードを開始します。
|
ステップ 4 | ipaccess-group {access-list-number | access-list-name} {in | out}
例:
Device(config-if)# ip access-group acl1 in
|
指定したアクセス リストをインバウンド インターフェイスに適用します。
|
ステップ 5 | end
例:
|
インターフェイス コンフィギュレーション モードを終了し、特権 EXEC モードに戻ります。
|
IP 名前付きアクセス コントロール リストの追加情報
IP 名前付きアクセス コントロール リストに関する機能情報
Cisco Feature Navigator を使用すると、プラットフォームおよびソフトウェア イメージのサポート情報を検索できます。Cisco Feature Navigator を使用すると、ソフトウェア イメージがサポートする特定のソフトウェア リリース、フィーチャ セット、またはプラットフォームを確認できます。Cisco Feature Navigator には、http://www.cisco.com/go/cfn からアクセスします。Cisco.com のアカウントは必要ありません。
(注) |
次の表は、特定のソフトウェア リリース トレインで各機能のサポートが導入されたときのソフトウェア リリースのみを示しています。その機能は、特に断りがない限り、それ以降の一連のソフトウェア リリースでもサポートされます。
|
表 2 IP 名前付きアクセス コントロール リストに関する機能情報
機能名
|
リリース
|
機能情報
|
IP アクセス リスト
|
Cisco IOS XE Fuji 16.7.1
|
この機能が Cisco cBR シリーズ コンバージド ブロードバンド ルータ上の Cisco IOS XE Fuji 16.7.1 に統合されました。
|