VACL の設定
ここでは、VACL の設定手順について説明します。
• 「VACL の設定の概要」
• 「VLAN アクセス マップの定義」
• 「VLAN アクセス マップ シーケンスでの match 句の設定」
• 「VLAN アクセス マップ シーケンスでの action 句の設定」
• 「VLAN アクセス マップの適用」
• 「VLAN アクセス マップの設定の確認」
• 「VLAN アクセス マップの設定および確認の例」
• 「キャプチャ ポートの設定」
VACL の設定の概要
VACL は標準および拡張 Cisco IOS IP と IPX ACL、MAC レイヤの名前付き ACL(を参照)、および VLAN アクセス マップを使用します。
VLAN アクセス マップは、VLAN または VACL キャプチャの WAN インターフェイスに適用されます。WAN インターフェイスに付加された VACL は、標準または拡張 Cisco IOS IP ACL だけをサポートします。
各 VLAN アクセス マップは、1 つまたは複数のマップ シーケンスで構成できます。各シーケンスには match コマンドと action コマンドが含まれます。match コマンドはトラフィック フィルタリング用の IP、IPX、または MAC ACL を指定します。action コマンドは一致した場合に実行するアクションを指定します。フローが許可(permit)ACL エントリと一致した場合、関連付けられたアクションが実行され、それ以降の残りのシーケンスに対してフローはチェックされません。フローが拒否(deny)ACL エントリと一致した場合、同じシーケンス内の次の ACL、または次のシーケンスに対してフローがチェックされます。フローがどの ACL エントリとも一致せず、1 つまたは複数の ACL がそのパケット タイプ用に設定されている場合、パケットは拒否されます。
ブリッジド トラフィックおよびルーテッド トラフィックの両方にアクセス コントロールを使用するには、VACL を単独で使用するか、または VACL と ACL を組み合わせて使用します。VLAN インターフェイス上で ACL を定義して、入力と出力のルーテッド トラフィックに対してアクセスを制御できます。VACL を定義して、ブリッジド トラフィックに対してアクセス コントロールを使用します。
VACL とともに ACL を使用する場合は、次の点に注意してください。
• 発信 ACL でのロギングの必要があるパケットは、VACL で拒否された場合、記録されません。
• VACL は NAT 変換前のパケットに適用されます。アクセス コントロールされなかった変換フローは、VACL 設定により、変換後にアクセス コントロールされる場合があります。
VACL の action 句には、転送(forward)、ドロップ(drop)、キャプチャ(capture)、またはリダイレクト(redirect)を指定できます。トラフィックをログに記録することもできます。WAN インターフェイスに適用された VACL は、リダイレクトまたはログ アクションをサポートしません。
(注) • VACL のマップの最後には、暗黙的な拒否エントリがあります。パケットがどの ACL エントリとも一致せず、1 つまたは複数の ACL がそのパケット タイプ用に設定されている場合、パケットは拒否されます。
• 空または未定義の ACL が VACL 内で指定されている場合、すべてのパケットはこの ACL に一致し、関連付けられたアクションが実行されます。
VLAN アクセス マップの定義
VLAN アクセス マップを定義するには、次の作業を行います。
|
|
Router(config)# vlan access-map map_name [ 0-65535 ] |
VLAN アクセス マップを定義します。任意で、VLAN アクセス マップのシーケンス番号を指定できます。 |
Router(config)# no vlan access-map map_name 0-65535 |
VLAN アクセス マップからマップ シーケンスを削除します。 |
Router(config)# no vlan access-map map_name |
VLAN アクセス マップを削除します。 |
VLAN アクセス マップを定義する際、次の情報に注意してください。
• エントリを追加または変更する場合は、マップのシーケンス番号を指定します。
• マップのシーケンス番号を指定しないと、番号が自動的に割り当てられます。
• 各マップ シーケンスには、match 句および action 句をそれぞれ 1 つだけ指定できます。
• マップ シーケンスを削除する場合は、シーケンス番号を指定して no キーワードを使用します。
• マップを削除する場合は、シーケンス番号を指定しないで、 no キーワードを使用します。
(注) VLAN アクセスマップを定義するときに、アクセスマップ名とスペースはアクセスマップ名で許可されないため、単語のみを使用する必要があります。たとえば、アクセスマップの命名に「map_name」は使用できますが、「map name」などの複数の単語を使用することはできません。
「VLAN アクセス マップの設定および確認の例」を参照してください。
VLAN アクセス マップ シーケンスでの match 句の設定
VLAN アクセス マップ シーケンスに match 句を設定するには、次の作業を行います。
|
|
Router(config-access-map)# match { ip address { 1-199 | 1300-2699 | acl_name } | ipx address { 800-999 | acl_name }| mac address acl_name } |
VLAN アクセス マップ シーケンスに match 句を設定します。 |
Router(config-access-map)# no match { ip address { 1-199 | 1300-2699 | acl_name } | ipx address { 800-999 | acl_name }| mac address acl_name } |
VLAN アクセス マップ シーケンスから match 句を削除します。 |
VLAN アクセス マップ シーケンスに match 句を設定する際、次の情報に注意してください。
• 1 つまたは複数の ACL を選択できます。
• WAN インターフェイスに付加された VACL は、標準または拡張 Cisco IOS IP ACL だけをサポートします。
• match 句を削除したり、match 句内の特定の ACL を削除したりする場合は、no キーワードを使用します。
• 名前付き MAC レイヤ ACL については、を参照してください。
• Cisco IOS ACL の詳細については、次の URL にある『 Cisco IOS Security Configuration Guide , Release 12.2』の「Traffic Filtering and Firewalls」を参照してください。
http://www.cisco.com/en/US/docs/ios/12_2/security/configuration/guide/scfacls.html
「VLAN アクセス マップの設定および確認の例」を参照してください。
VLAN アクセス マップ シーケンスでの action 句の設定
VLAN アクセス マップ シーケンスに action 句を設定するには、次の作業を行います。
|
|
Router(config-access-map)# action { drop [ log ]} | { forward [ capture ]} | { redirect {{ethernet | fastethernet | gigabitethernet | tengigabitethernet} slot/port} | {port-channel channel_id}} |
VLAN アクセス マップ シーケンスに action 句を設定します。 |
Router(config-access-map)# no action { drop [ log ]} | { forward [ capture ]} | { redirect {{ethernet | fastethernet | gigabitethernet | tengigabitethernet} slot/port} | {port-channel channel_id}} |
VLAN アクセス マップ シーケンスから action 句を削除します。 |
VLAN アクセス マップ シーケンスに action 句を設定する際、次の情報に注意してください。
• パケットをドロップ、転送、転送してキャプチャ、またはリダイレクトするアクションを設定できます。
• WAN インターフェイスに適用される VACL は、転送してキャプチャするアクションだけをサポートします。WAN インターフェイスに適用された VACL は、ドロップ、転送、またはリダイレクト アクションをサポートしません。
• 転送されたパケットも、設定済み Cisco IOS セキュリティ ACL による制約を受けます。
• capture アクションを指定すると、転送されたパケットのキャプチャ ビットが設定されて、キャプチャ機能がイネーブルであるポートがパケットを受信できるようになります。キャプチャできるのは、転送されたパケットだけです。 capture アクションの詳細については、「キャプチャ ポートの設定」を参照してください。
• WAN インターフェイスに適用された VACL は、log アクションをサポートしません。
• log アクションが指定されている場合、ドロップされたパケットがソフトウェアで記録されます。記録できるのは、ドロップされた IP パケットだけです。
• redirect アクションを指定すると、物理インターフェイスまたは EtherChannel のいずれかのインターフェイスを 5 つまで指定できます。EtherChannel メンバーまたは VLAN インターフェイスにパケットをリダイレクトするように指定することはできません。
• リダイレクト インターフェイスは、VACL アクセス マップが設定されている VLAN 内に存在する必要があります。
• PFC3 を使用した場合、VACL がトラフィックを出力 SPAN 送信元ポートにリダイレクトすると、SPAN は VACL リダイレクトされたトラフィックをコピーしません。
• SPAN および RSPAN 宛先ポートは、VACL リダイレクトされたトラフィックを送信します。
• action 句を削除するか、または指定されたリダイレクト インターフェイスを削除する場合は、no キーワードを使用します。
「VLAN アクセス マップの設定および確認の例」を参照してください。
VLAN アクセス マップの適用
VLAN アクセス マップを適用するには、次の作業を行います。
|
|
Router(config)# vlan filter map_name { vlan-list vlan_list | interface type number } |
指定した VLAN または WAN インターフェイスに VLAN アクセス マップを適用します。 |
Router(config)# no vlan filter map_name [ vlan-list vlan_list | interface type 1 number 2] |
指定した VLAN または WAN インターフェイスから VLAN アクセス マップを削除します。 |
VLAN アクセス マップを適用する際、次の情報に注意してください。
• VLAN アクセス マップは、1 つまたは複数の VLAN または WAN インターフェイスに適用できます。
• vlan_list パラメータには、単一の VLAN ID、カンマで区切った VLAN ID リスト、または VLAN ID 範囲( vlan_ID - vlan_ID )を指定できます。
• VACL が適用された WAN インターフェイスを削除すると、インターフェイス上の VACL 設定も削除されます。
• 各 VLAN または WAN インターフェイスには、VLAN アクセス マップを 1 つだけ適用できます。
• VLAN に適用した VACL がアクティブになるのは、レイヤ 3 VLAN インターフェイスが設定されている VLAN に対してだけです。レイヤ 3 VLAN インターフェイスを備えていない VLAN に VLAN アクセス マップを適用すると、VLAN アクセス マップをサポートするレイヤ 3 VLAN インターフェイスが、管理上のダウン状態で作成されます。
• レイヤ 2 VLAN が存在しないか動作していない場合、VLAN に適用される VACL は非アクティブです。
• セカンダリ プライベート VLAN に VACL を適用することはできません。プライマリ プライベート VLAN に適用された VACL は、セカンダリ プライベート VLAN にも適用されます。
• VLAN または WAN インターフェイスから VLAN アクセス マップを消去する場合は、 no キーワードを使用します。
「VLAN アクセス マップの設定および確認の例」を参照してください。
VLAN アクセス マップの設定の確認
VLAN アクセス マップの設定を確認するには、次の作業を行います。
|
|
Router# show vlan access-map [ map_name ] |
VLAN アクセス マップの内容を表示して、VLAN アクセス マップの設定を確認します。 |
Router# show vlan filter [ access-map map_name | vlan vlan_id | interface type number ] |
VACL と VLAN 間のマッピングの内容を表示して、VLAN アクセス マップの設定を確認します。 |
VLAN アクセス マップの設定および確認の例
net_10 および any_host という名前の IP ACL が、次のように定義されていると想定します。
Router# show ip access-lists net_10
Extended IP access list net_10
permit ip 10.0.0.0 0.255.255.255 any
Router# show ip access-lists any_host
Standard IP access list any_host
次に、IP パケットを転送するよう、VLAN アクセス マップを定義および適用する例を示します。この例では、net_10 に一致する IP トラフィックは転送され、それ以外のすべての IP パケットはデフォルトのドロップ アクションによってドロップされます。このマップは VLAN 12 ~ 16 に適用されます。
Router(config)# vlan access-map thor 10
Router(config-access-map)# match ip address net_10
Router(config-access-map)# action forward
Router(config-access-map)# exit
Router(config)# vlan filter thor vlan-list 12-16
次に、IP パケットをドロップおよび記録するよう、VLAN アクセス マップを定義および適用する例を示します。この例では、net_10 に一致する IP トラフィックはドロップおよび記録され、それ以外のすべての IP パケットは転送されます。
Router(config)# vlan access-map ganymede 10
Router(config-access-map)# match ip address net_10
Router(config-access-map)# action drop log
Router(config-access-map)# exit
Router(config)# vlan access-map ganymede 20
Router(config-access-map)# match ip address any_host
Router(config-access-map)# action forward
Router(config-access-map)# exit
Router(config)# vlan filter ganymede vlan-list 7-9
次に、IP パケットを転送およびキャプチャするよう、VLAN アクセス マップを定義および適用する例を示します。この例では、net_10 に一致する IP トラフィックは転送およびキャプチャされ、それ以外のすべての IP パケットはドロップされます。
Router(config)# vlan access-map mordred 10
Router(config-access-map)# match ip address net_10
Router(config-access-map)# action forward capture
Router(config-access-map)# exit
Router(config)# vlan filter mordred vlan-list 2, 4-6
キャプチャ ポートの設定
VACL フィルタリングされたトラフィックをキャプチャするよう設定されたポートを、「キャプチャ ポート」といいます。
(注) キャプチャされたトラフィックに IEEE 802.1Q または ISL(スイッチ間リンク)タグを適用するには、キャプチャ ポートで無条件にトランクするように設定します(およびを参照)。
キャプチャ ポートを設定するには、次の作業を行います。
|
|
|
ステップ 1 |
Router(config)# interface {{ type slot/port } |
設定するインターフェイスを指定します。 |
ステップ 2 |
Router(config-if)# switchport capture allowed vlan { add | all | except | remove } vlan_list |
(任意)宛先 VLAN 単位で、キャプチャされたトラフィックをフィルタリングします。デフォルトは、 all です。 |
Router(config-if)# no switchport capture allowed vlan |
設定された宛先 VLAN リストを消去して、デフォルト値に戻します( all )。 |
ステップ 3 |
Router(config-if)# switchport capture |
VACL フィルタリングされたトラフィックをキャプチャするよう、ポートを設定します。 |
Router(config-if)# no switchport capture |
インターフェイス上のキャプチャ機能をディセーブルにします。 |
キャプチャ ポートを設定する際、次の情報に注意してください。
• 任意のポートをキャプチャ ポートとして設定できます。
• vlan_list パラメータには、単一の VLAN ID、カンマで区切った VLAN ID リスト、または VLAN ID 範囲( vlan_ID - vlan_ID )を指定できます。
• キャプチャされたトラフィックをカプセル化するには、 switchport trunk encapsulation コマンドでキャプチャ ポートを設定してから(を参照)、 switchport capture コマンドを入力します。
• キャプチャされたトラフィックをカプセル化しない場合は、 switchport mode access コマンドでキャプチャ ポートを設定してから(を参照)、 switchport capture コマンドを入力します。
• キャプチャ ポートは、出力トラフィックだけをサポートします。トラフィックは、キャプチャ ポートからルータに入ることができません。
次に、ファスト イーサネット インターフェイス 5/1 をキャプチャ ポートとして設定する例を示します。
Router(config)# interface gigabitEthernet 5/1
Router(config-if)# switchport capture
次に、VLAN アクセス マップの情報を表示する例を示します。
Router# show vlan access-map mordred
Vlan access-map "mordred" 10
次に、VACL と VLAN 間のマッピングを表示する例を示します。各 VACL マップでは、マップが設定されている VLAN、およびマップがアクティブである VLAN についての情報があります。VLAN 内にインターフェイスがない場合、VACL は、アクティブになりません。
Configured on VLANs: 2,4-6
VACL ロギングの設定
VACL ロギングが設定されているときに、次の状況で IP パケットが拒否されると、ログ メッセージが生成されます。
• 一致する最初のパケットを受信した場合
• 直前の 5 分間に、一致するパケットを受信した場合
• 5 分経過する前にしきい値に達している場合
ログ メッセージはフロー単位で生成されます。フローは、同じ IP アドレスおよびレイヤ 4(UDP または TCP)ポート番号を持つパケットとして定義されます。 ログ メッセージが生成されると、タイマーおよびパケット カウントがリセットされます。
VACL ログ機能には、次の制限事項が適用されます。
• リダイレクトされたパケットにはレート制限機能が適用されるので、VACL ロギング カウンタが不正確になることがあります。
• 拒否された IP パケットだけが記録されます。
VACL ロギングを設定するには、VLAN アクセス マップ サブモードの action drop log コマンド アクションを使用します(設定情報については、「VACL の設定」を参照してください)。この作業をグローバル コンフィギュレーション モードで実行して、グローバル VACL ロギング パラメータを指定します。
|
|
|
ステップ 1 |
Router(config)# vlan access-log maxflow max_number |
ログ テーブルのサイズを設定します。maxflow の値を 0 に設定すると、ログ テーブルの内容を削除できます。デフォルトは 500、有効範囲は 0 ~ 2048 です。ログ テーブルが満杯になると、新しいフローのパケットが記録されても、ソフトウェアによってドロップされます。 |
ステップ 2 |
Router(config)# vlan access-log ratelimit pps |
VACL ログ パケットの最大リダイレクト速度を設定します。デフォルトのパケット転送速度は 2000 パケット/秒、有効範囲は 0 ~ 5000 です。制限を超えたパケットは、ハードウェアによってドロップされます。 |
ステップ 3 |
Router(config)# vlan access-log threshold pkt_count |
ロギングしきい値を設定します。5 分経過する前にフローのしきい値に達すると、ロギング メッセージが生成されます。デフォルトでは、しきい値は設定されません。 |
ステップ 4 |
Router(config)# exit |
VLAN アクセス マップ コンフィギュレーション モードを終了します。 |
ステップ 5 |
Router# show vlan access-log config |
(任意)設定された VACL ロギング プロパティを表示します。 |
ステップ 6 |
Router# show vlan access-log flow protocol {{ src_addr src_mask } | any | {host { hostname | host_ip }}} {{ dst_addr dst_mask } | any | {host { hostname | host_ip }}} [vlan vlan_id ] |
(任意)VACL ログ テーブルの内容を表示します。 |
ステップ 7 |
Router# show vlan access-log statistics |
(任意)パケット数、メッセージ数などの統計情報を表示します。 |
次に、グローバル VACL ロギングをハードウェア内で設定する例を示します。
Router(config)# vlan access-log maxflow 800
Router(config)# vlan access-log ratelimit 2200
Router(config)# vlan access-log threshold 4000