この製品のマニュアルセットは、偏向のない言語を使用するように配慮されています。このマニュアルセットでの偏向のない言語とは、年齢、障害、性別、人種的アイデンティティ、民族的アイデンティティ、性的指向、社会経済的地位、およびインターセクショナリティに基づく差別を意味しない言語として定義されています。製品ソフトウェアのユーザーインターフェイスにハードコードされている言語、RFP のドキュメントに基づいて使用されている言語、または参照されているサードパーティ製品で使用されている言語によりドキュメントに例外が存在する場合があります。シスコのインクルーシブランゲージに対する取り組みの詳細は、こちらをご覧ください。
このドキュメントは、米国シスコ発行ドキュメントの参考和訳です。リンク情報につきましては、日本語版掲載時点で、英語版にアップデートがあり、リンク先のページが移動/変更されている場合がありますことをご了承ください。あくまでも参考和訳となりますので、正式な内容については米国サイトのドキュメントを参照ください。
目次
この章では、Cisco NX-OS デバイスの IP アクセス コントロール リスト(ACL)を設定する方法について説明します。
特に指定がなければ、IP ACL は IPv4 および IPv6 の ACL を意味します。
ACL とは、トラフィックのフィルタリングに使用する順序付きのルール セットのことです。 各ルールには、パケットがルールに一致するために満たさなければならない条件のセットが規定されています。 デバイスは、ある ACL がパケットに適用されると判断すると、そのすべてのルールの条件にパケットを照合し、テストします。 ルールは、そのパケットが許可されるか拒否されるかを決定します。 指定されたルールのいずれにも一致しなければ、デバイスは適用可能な暗黙のルールを適用します。 デバイスは、許可されたパケットの処理を続行し、拒否されたパケットはドロップします。
ACL を使用すると、ネットワークおよび特定のホストを、不要なトラフィックや望ましくないトラフィックから保護できます。 たとえば、ACL を使用して、厳重にセキュリティ保護されたネットワークからインターネットにハイパー テキスト トランスファ プロトコル(HTTP)トラフィックが流入するのを禁止できます。 また、ACL を使用して特定のサイトへの HTTP トラフィックを許可することもできます。その場合は、サイトの IP アドレスが、IP ACL に指定されているかどうかによって判定します。
Cisco Nexus 1000V インタークラウドでは、ACL はポート プロファイルにのみ適用できます。Cisco Nexus 1000V インタークラウドでは、vEthernet インターフェイスへの ACL 適用はサポートされていません。
Cisco Nexus 1000V インタークラウドでは、トラフィック フィルタリングに IP ACL がサポートされます。 IP ACL では、デバイスは IPv4 ACL を IP トラフィックだけに適用します。
(注) |
このリリースでは、Cisco Nexus 1000V インタークラウドは MAC ACL をサポートしません。 |
デバイスは、パケットを処理する際に、そのパケットの転送パスを決定します。 デバイスは、次の順序で ACL を適用します。
ACL によるネットワーク トラフィックのフィルタリング方法を設定する際に、何を作成、変更、削除するかを決めるのがルールです。 ルールは実行コンフィギュレーション内に表示されます。 ACL をインターフェイスに適用するか、またはインターフェイスにすでに適用されている ACL 内のルールを変更すると、スーパーバイザ モジュールは実行コンフィギュレーション内のルールから ACL のエントリを作成し、それらの ACL エントリを適用可能なインタークラウド スイッチに送信します。
アクセス リスト コンフィギュレーション モードで permit または deny コマンドを使用すると、ACL にルールを作成できます。 これにより、デバイスは許可ルール内の基準と一致するトラフィックを許可し、拒否ルール内の基準と一致するトラフィックをブロックします。 ルールに一致するためにトラフィックが満たさなければならない基準を設定するためのオプションが多数用意されています。
各ルールには、ルールに一致するトラフィックの送信元と宛先を指定します。 指定する送信元および宛先には、特定のホスト、ホストのネットワークまたはグループ、あるいは任意のホストを使用できます。
ACL では、プロトコルによってトラフィックを識別できます。 一部のプロトコルは名前で指定できます。 たとえば、IP ACL では、ICMP を名前で指定できます。
IP ACL では、インターネット プロトコル番号を表す整数でプロトコルを指定できます。 たとえば、レイヤ 2 トンネリング プロトコル(L2TP)を指定するには、115 を使用します。
IP ACL には暗黙のルールがあります。暗黙のルールとは、実行コンフィギュレーションには出現しないものの、ACL の他のルールが一致しないときにデバイスがトラフィックに適用するルールのことです。 ACL のルール単位の統計情報を維持するようにデバイスを設定した場合、暗黙ルールの統計情報はデバイスに維持されません。
すべての IP ACL には、不一致の IP トラフィックを拒否する次の暗黙ルールがあります。
deny ip any any
この暗黙ルールによって、トラフィックのレイヤ 2 ヘッダーに指定されているプロトコルに関係なく、不一致トラフィックが確実に拒否されます。
追加のオプションを使用してトラフィックを識別できます。 これらのオプションは、ACL のタイプによって異なります。 次のリストには、ほとんどの追加フィルタリング オプションが含まれていますが、すべてを網羅しているわけではありません。
デバイスはルールのシーケンス番号をサポートしています。 入力するすべてのルールにシーケンス番号が割り当てられます(ユーザによる割り当てまたはデバイスによる自動割り当て)。 シーケンス番号によって、次の ACL 設定作業が容易になります。
switch(config-acl)# no permit tcp 10.0.0.0/8 anyこのルールに 101 番のシーケンス番号が付いていれば、次のコマンドだけでルールを削除できます。
switch(config-acl)# no 101
シーケンス番号を使用せずにルールを入力すると、デバイスはそのルールを ACL の最後に追加し、そのルールの直前のルールのシーケンス番号よりも 10 大きい番号を割り当てます。 たとえば、ACL 内の最後のルールのシーケンス番号が 225 で、シーケンス番号を指定せずにルールを追加した場合、デバイスはその新しいルールにシーケンス番号 235 を割り当てます。
さらに、ACL 内のルールにシーケンス番号を再割り当てすることも可能です。 シーケンス番号の再割り当ては、ACL 内に、100、101 のように連続するシーケンス番号のルールがある場合、それらのルールの間に 1 つ以上のルールを挿入する必要があるときに便利です。
パラメータ |
デフォルト |
---|---|
IP ACL |
デフォルトの IP ACL は存在しません。 |
ACL ルール |
すべての ACL に暗黙のルールが適用されます。 |
デバイスに IPv4 ACL を作成し、これにルールを追加できます。
この手順を開始する前に、EXEC モードで CLI にログインする必要があります。
switch# configure terminal switch(config)# ip access-list acl-01 switch(config-acl)# permit ip 192.168.2.0/24 any switch(config-acl)# show ip access-lists acl-01 switch(config-acl)# copy running-config startup-config
既存の IPv4 ACL に対してルールの追加または削除を行うことができます。 既存のルールは変更できません。 ルールを変更するには、そのルールを削除してから、変更を加えたルールを再作成します。
既存のルールの間に新しいルールを挿入する必要がある場合で、現在のシーケンス番号の空き状況ではすべてを挿入できないときは、resequence コマンドを使用してシーケンス番号を再割り当てします。
この手順を開始する前に、EXEC モードで CLI にログインする必要があります。
switch# configure terminal switch(config)# show ip access-list acl-01 switch(config)# 80 permit ip 192.168.1.0/24 any switch(config)# ip access-list acl-01 switch(config-acl)# 100 permit ip 192.168.2.0/24 any switch(config-acl)# no 80 switch(config-acl)# show ip access-lists acl-01 switch(config-acl)# copy running-config startup-config
ACL を削除しても、適用されているインターフェイスの設定には影響しません。 代わりに、デバイスは削除された ACL が空であると見なし、暗黙拒否ルールによってすべてのトラフィックを拒否します。
この手順を開始する前に、次のことを確認してください。
switch# configure terminal switch(config)# no ip access-list acl-01 switch(config)# show ip access-lists acl-01 summary switch(config)# copy running-config startup-config
IP ACL 内のルールに付けられたすべてのシーケンス番号を変更できます。
この手順を開始する前に、EXEC モードで CLI にログインする必要があります。
switch# configure terminal switch(config)# resequence access-list ip acl-01 100 10 switch(config)# show ip access-lists acl-01 switch(config)# copy running-config startup-config
IP ACL をポート プロファイルに追加するには、次の手順を実行します。
次の情報を知っている必要があります。
この手順を開始する前に、次のことを確認してください。
switch# configure terminal switch(config)# port-profile AccessProf switch(config-port-prof)# ip port access-group allaccess4 out switch(config-port-prof)# show port-profile name AccessProf switch(config-port-prof)# copy running-config startup-config
管理インターフェイス mgmt0 に IPv4 または ACL を適用するには、次の手順を実行します。
適用する ACL が存在し、目的に応じたトラフィック フィルタリングが設定されていることを確認します。
この手順を開始する前に、EXEC モードで CLI にログインする必要があります。
switch# configure terminal switch(config)# interface mgmt0 switch(config-if)# ip access-group telnet in switch(config-if)# show ip access-lists telnet summary IP access list telnet statistics per-entry Total ACEs Configured:2 Configured on interfaces: mgmt0 - ingress (Router ACL) Active on interfaces: mgmt0 - ingress (Router ACL) switch(config-if)# copy running-config startup-config
次のいずれかのコマンドを使用して、設定を確認します。
コマンド |
目的 |
---|---|
show running-config aclmgr |
IP ACL の設定および IP ACL が適用されているインターフェイスを含めて、ACL の設定を表示します。 |
show ip access-lists [name] |
すべての IPv4 アクセス コントロール リスト(ACL)または特定の IPv4 ACL を表示します。 |
show ip access-list [name] summary |
設定済みのすべての IPv4 ACL または名前付き IPv4 ACL の要約を表示します。 |
show running-config port profile |
ACL を適用したポート プロファイルのコンフィギュレーションを表示します。 |
IP ACL のモニタリングには、次のいずれかのコマンドを使用します。
コマンド |
目的 |
---|---|
show ip access-lists |
IPv4 ACL の設定を表示します。 |
show ip access-summary |
アクセス リストが設定されているインターフェイスの詳細を表示します。 |
この表には、機能の追加によるリリースの更新内容のみが記載されています。
機能の履歴 |
リリース |
機能情報 |
---|---|---|
IP ACL |
Release 5.2(1)IC1(1.1) |
この機能が導入されました。 |
目次
この章では、Cisco NX-OS デバイスの IP アクセス コントロール リスト(ACL)を設定する方法について説明します。
特に指定がなければ、IP ACL は IPv4 および IPv6 の ACL を意味します。
- ACL について
- IP ACL の前提条件
- IP ACL の注意事項と制約事項
- IP ACL のデフォルト設定
- IP ACL の設定
- IP ACL の設定の確認
- IP ACL のモニタリング
- IP ACL の機能の履歴
ACL について
ACL とは、トラフィックのフィルタリングに使用する順序付きのルール セットのことです。 各ルールには、パケットがルールに一致するために満たさなければならない条件のセットが規定されています。 デバイスは、ある ACL がパケットに適用されると判断すると、そのすべてのルールの条件にパケットを照合し、テストします。 ルールは、そのパケットが許可されるか拒否されるかを決定します。 指定されたルールのいずれにも一致しなければ、デバイスは適用可能な暗黙のルールを適用します。 デバイスは、許可されたパケットの処理を続行し、拒否されたパケットはドロップします。
ACL を使用すると、ネットワークおよび特定のホストを、不要なトラフィックや望ましくないトラフィックから保護できます。 たとえば、ACL を使用して、厳重にセキュリティ保護されたネットワークからインターネットにハイパー テキスト トランスファ プロトコル(HTTP)トラフィックが流入するのを禁止できます。 また、ACL を使用して特定のサイトへの HTTP トラフィックを許可することもできます。その場合は、サイトの IP アドレスが、IP ACL に指定されているかどうかによって判定します。
ACL のタイプと適用
Cisco Nexus 1000V インタークラウドでは、ACL はポート プロファイルにのみ適用できます。Cisco Nexus 1000V インタークラウドでは、vEthernet インターフェイスへの ACL 適用はサポートされていません。
Cisco Nexus 1000V インタークラウドでは、トラフィック フィルタリングに IP ACL がサポートされます。 IP ACL では、デバイスは IPv4 ACL を IP トラフィックだけに適用します。
(注)
このリリースでは、Cisco Nexus 1000V インタークラウドは MAC ACL をサポートしません。
ルール
ACL によるネットワーク トラフィックのフィルタリング方法を設定する際に、何を作成、変更、削除するかを決めるのがルールです。 ルールは実行コンフィギュレーション内に表示されます。 ACL をインターフェイスに適用するか、またはインターフェイスにすでに適用されている ACL 内のルールを変更すると、スーパーバイザ モジュールは実行コンフィギュレーション内のルールから ACL のエントリを作成し、それらの ACL エントリを適用可能なインタークラウド スイッチに送信します。
アクセス リスト コンフィギュレーション モードで permit または deny コマンドを使用すると、ACL にルールを作成できます。 これにより、デバイスは許可ルール内の基準と一致するトラフィックを許可し、拒否ルール内の基準と一致するトラフィックをブロックします。 ルールに一致するためにトラフィックが満たさなければならない基準を設定するためのオプションが多数用意されています。
送信元と宛先
各ルールには、ルールに一致するトラフィックの送信元と宛先を指定します。 指定する送信元および宛先には、特定のホスト、ホストのネットワークまたはグループ、あるいは任意のホストを使用できます。
プロトコル
ACL では、プロトコルによってトラフィックを識別できます。 一部のプロトコルは名前で指定できます。 たとえば、IP ACL では、ICMP を名前で指定できます。
IP ACL では、インターネット プロトコル番号を表す整数でプロトコルを指定できます。 たとえば、レイヤ 2 トンネリング プロトコル(L2TP)を指定するには、115 を使用します。
暗黙のルール
IP ACL には暗黙のルールがあります。暗黙のルールとは、実行コンフィギュレーションには出現しないものの、ACL の他のルールが一致しないときにデバイスがトラフィックに適用するルールのことです。 ACL のルール単位の統計情報を維持するようにデバイスを設定した場合、暗黙ルールの統計情報はデバイスに維持されません。
すべての IP ACL には、不一致の IP トラフィックを拒否する次の暗黙ルールがあります。
deny ip any anyこの暗黙ルールによって、トラフィックのレイヤ 2 ヘッダーに指定されているプロトコルに関係なく、不一致トラフィックが確実に拒否されます。
シーケンス番号
デバイスはルールのシーケンス番号をサポートしています。 入力するすべてのルールにシーケンス番号が割り当てられます(ユーザによる割り当てまたはデバイスによる自動割り当て)。 シーケンス番号によって、次の ACL 設定作業が容易になります。
- 既存のルールの間に新規のルールを追加する:シーケンス番号を指定することによって、ACL 内での新規ルールの挿入場所を指定します。 たとえば、ルール番号 100 と 110 の間に新しいルールを挿入する必要がある場合は、シーケンス番号 105 を新しいルールに割り当てます。
- ルールを削除する:シーケンス番号を使用しない場合は、ルールを削除するのに、次のようにルール全体を入力する必要があります。
switch(config-acl)# no permit tcp 10.0.0.0/8 anyこのルールに 101 番のシーケンス番号が付いていれば、次のコマンドだけでルールを削除できます。switch(config-acl)# no 101- ルールを移動する:シーケンス番号を使用すれば、同じ ACL 内の異なる場所にルールを移動する必要がある場合に、そのルールのコピーをシーケンス番号で正しい位置に挿入してから、元のルールを削除できます。 この方法により、トラフィックを中断せずにルールを移動できます。
シーケンス番号を使用せずにルールを入力すると、デバイスはそのルールを ACL の最後に追加し、そのルールの直前のルールのシーケンス番号よりも 10 大きい番号を割り当てます。 たとえば、ACL 内の最後のルールのシーケンス番号が 225 で、シーケンス番号を指定せずにルールを追加した場合、デバイスはその新しいルールにシーケンス番号 235 を割り当てます。
さらに、ACL 内のルールにシーケンス番号を再割り当てすることも可能です。 シーケンス番号の再割り当ては、ACL 内に、100、101 のように連続するシーケンス番号のルールがある場合、それらのルールの間に 1 つ以上のルールを挿入する必要があるときに便利です。
IP ACL の作成
手順
IP ACL の変更
手順既存の IPv4 ACL に対してルールの追加または削除を行うことができます。 既存のルールは変更できません。 ルールを変更するには、そのルールを削除してから、変更を加えたルールを再作成します。
既存のルールの間に新しいルールを挿入する必要がある場合で、現在のシーケンス番号の空き状況ではすべてを挿入できないときは、resequence コマンドを使用してシーケンス番号を再割り当てします。
switch# configure terminal switch(config)# show ip access-list acl-01 switch(config)# 80 permit ip 192.168.1.0/24 any switch(config)# ip access-list acl-01 switch(config-acl)# 100 permit ip 192.168.2.0/24 any switch(config-acl)# no 80 switch(config-acl)# show ip access-lists acl-01 switch(config-acl)# copy running-config startup-configIP ACL の削除
手順
IP ACL 内のシーケンス番号の変更
手順
IP ACL のポート プロファイルへの追加
手順
管理インターフェイスへの IP ACL の適用
手順管理インターフェイス mgmt0 に IPv4 または ACL を適用するには、次の手順を実行します。
適用する ACL が存在し、目的に応じたトラフィック フィルタリングが設定されていることを確認します。
switch# configure terminal switch(config)# interface mgmt0 switch(config-if)# ip access-group telnet in switch(config-if)# show ip access-lists telnet summary IP access list telnet statistics per-entry Total ACEs Configured:2 Configured on interfaces: mgmt0 - ingress (Router ACL) Active on interfaces: mgmt0 - ingress (Router ACL) switch(config-if)# copy running-config startup-configIP ACL の設定の確認
次のいずれかのコマンドを使用して、設定を確認します。
コマンド
目的
show running-config aclmgr
IP ACL の設定および IP ACL が適用されているインターフェイスを含めて、ACL の設定を表示します。
show ip access-lists [name]
すべての IPv4 アクセス コントロール リスト(ACL)または特定の IPv4 ACL を表示します。
show ip access-list [name] summary
設定済みのすべての IPv4 ACL または名前付き IPv4 ACL の要約を表示します。
show running-config port profile
ACL を適用したポート プロファイルのコンフィギュレーションを表示します。