Cisco セキュリティ アプライアンス コマンドライン コンフィギュレーション ガイド v.8.0
アクセス リストによるトラフィックの指定
アクセス リストによるトラフィックの指定
発行日;2012/02/01 | ドキュメントご利用ガイド | ダウンロード ; この章pdf , ドキュメント全体pdf (PDF - 20MB) | フィードバック

目次

アクセス リストによるトラフィックの指定

アクセス リストの概要

アクセス リストのタイプ

アクセス コントロール エントリの順序

アクセス コントロールによる暗黙的な拒否

NAT 使用時にアクセス リストで使用する IP アドレス

拡張アクセス リストの追加

拡張アクセス リストの概要

透過ファイアウォールを介したブロードキャストとマルチキャスト トラフィックの許可

拡張 ACE の追加

EtherType アクセス リストの追加

EtherType アクセス リストの概要

サポートされている EtherType

IP および ARP だけの暗黙的な許可

アクセス リストの末尾にある暗黙的および明示的拒否 ACE

IPv6 の未サポート

同じインターフェイス上での拡張アクセス リストと EtherType アクセス リストの使用

マルチプロトコル ラベル スイッチング(MPLS)の許可

EtherType ACE の追加

標準アクセス リストの追加

Webtype アクセス リストの追加

オブジェクト グループ化機能によるアクセス リストの簡略化

オブジェクト グループ化機能の動作

オブジェクト グループの追加

プロトコル オブジェクト グループの追加

ネットワーク オブジェクト グループの追加

サービス オブジェクト グループの追加

ICMP タイプ オブジェクト グループの追加

オブジェクト グループのネスト

アクセス リストでのオブジェクト グループの使用

オブジェクト グループの表示

オブジェクト グループの削除

アクセス リストへのコメントの追加

拡張アクセス リストのアクティベーションのスケジュール

時間範囲の追加

ACE への時間範囲の適用

アクセス リスト アクティビティのロギング

アクセス リスト ロギングの概要

アクセス コントロール エントリのロギングの設定

拒否フローの管理

アクセス リストによるトラフィックの指定

この章では、アクセス リストを使用してトラフィックを指定する方法について説明します。この章は、次の項で構成されています。

「アクセス リストの概要」

「拡張アクセス リストの追加」

「EtherType アクセス リストの追加」

「標準アクセス リストの追加」

「Webtype アクセス リストの追加」

「オブジェクト グループ化機能によるアクセス リストの簡略化」

「アクセス リストへのコメントの追加」

「拡張アクセス リストのアクティベーションのスケジュール」

「アクセス リスト アクティビティのロギング」

IPv6 アクセス リストについては、「IPv6 アクセス リストの設定」を参照してください。

アクセス リストの概要

アクセス リストは、1 つまたは複数の Access Control Entry(ACE; アクセス コントロール エントリ)で構成されます。ACE は、permit 規則または deny 規則を指定するアクセス リスト内の 1 つのエントリで、プロトコル、送信元 IP アドレス、宛先 IP アドレス、またはネットワークに適用されます。また、オプションで、送信元ポートおよび宛先ポートに適用される場合もあります。

アクセス リストは、さまざまな機能で使用されます。モジュラ ポリシー フレームワークを使用する機能では、アクセス リストによってトラフィック クラス マップ内のトラフィックを識別できます。モジュラ ポリシー フレームワークの詳細については、「モジュラ ポリシー フレームワークの使用」を参照してください。

この項は、次の内容で構成されています。

「アクセス リストのタイプ」

「アクセス コントロール エントリの順序」

「アクセス コントロールによる暗黙的な拒否」

「NAT 使用時にアクセス リストで使用する IP アドレス」

アクセス リストのタイプ

表 18-1 に、アクセス リストのタイプと、それらの一般的な使用目的の一部を示します。

 

表 18-1 アクセス リストのタイプと一般的な使用目的

アクセス リストの使用目的
アクセス リストのタイプ
説明

IP トラフィックのネットワーク アクセスの制御(ルーテッド モードおよび透過モード)

拡張

セキュリティ アプライアンスでは、拡張アクセス リストにより明示的に許可されている場合を除き、低位のセキュリティ インターフェイスから高位のセキュリティ インターフェイスへのトラフィックは認められません。

(注) また、管理アクセス用のセキュリティ アプライアンス インターフェイスにアクセスする場合は、ホスト IP アドレスを許可するアクセス リストは不要です。必要なのは、「システム アクセスの管理」の説明に従って管理アクセスを設定することだけです。

AAA 規則でのトラフィック識別

拡張

AAA 規則では、アクセス リストを使用してトラフィックを識別します。

所定のユーザに関する IP トラフィックのネットワーク アクセス制御

拡張、ユーザごとに AAA サーバからダウンロード

ユーザに適用するダイナミック アクセス リストをダウンロードするように RADIUS サーバを設定できます。または、セキュリティ アプライアンス上に設定済みのアクセス リストの名前を送信するように RADIUS サーバを設定できます。

NAT(ポリシー NAT および NAT 免除)のアドレス識別

拡張

ポリシー NAT を使用すると、拡張アクセス リストで送信元アドレスと宛先アドレスを指定することにより、アドレスを変換するローカル トラフィックを指定できます。

VPNアクセスの確立

拡張

VPN コマンドで拡張アクセス リストを使用できます。

モジュラ ポリシー フレームワークのトラフィック クラス マップ内でのトラフィック識別

拡張

EtherType

アクセス リストを使用すると、クラス マップ内のトラフィックを識別できます。このマップは、モジュラー ポリシー フレームワークをサポートする機能に使用されます。モジュラー ポリシー フレームワークをサポートする機能には TCP および一般的な接続設定や検査などがあります。

透過ファイアウォール モードの場合、IP 以外のトラフィックのネットワーク アクセスの制御

EtherType

トラフィックを EtherType に基づいて制御するためのアクセス リストを設定できます。

OSPF ルート再配布の指定

標準

標準アクセス リストには、宛先アドレスだけが含まれています。標準アクセス リストを使用して、OSPF ルートの再配布を制御できます。

WebVPN のフィルタリング

Webtype

URL をフィルタリングするように Webtype アクセス リストを設定できます。

アクセス コントロール エントリの順序

アクセス リストは、1 つ以上のアクセス コントロール エントリで構成されます。アクセス リストのタイプに応じて、送信元アドレス、宛先アドレス、プロトコル、ポート(TCP または UDP の場合)、ICMPタイプ(ICMP の場合)、または EtherType を指定できます。

特定のアクセス リスト名に対して入力した各 ACE は、そのアクセス リストの末尾に追加されます。

ACE の順序は重要です。セキュリティ アプライアンスは、パケットを転送するかドロップするかを決定するとき、エントリがリストされている順序で各 ACE に対してパケットをテストします。一致が見つかると、ACE はそれ以上チェックされません。たとえば、すべてのトラフィックを明示的に許可する ACE をアクセス リストの先頭に作成した場合、それ以降の文はまったくチェックされません。

ACE をディセーブルにするには、 access-list コマンドで inactive キーワードを指定します。

アクセス コントロールによる暗黙的な拒否

アクセス リストの末尾には、暗黙的な拒否があるため、明示的に許可しない限り、トラフィックは通過できません。たとえば、特定のアドレス以外のすべてのユーザがセキュリティ アプライアンス経由でネットワークにアクセスできるようにするには、特定のアドレスを拒否してから、その他のすべてのアドレスを許可する必要があります。

EtherType アクセス リストの場合、アクセス リストの末尾にある暗黙的な拒否は、IP トラフィックや ARP には影響しません。たとえば、EtherType 8037 を許可する場合、アクセス リストの末尾にある暗黙的な拒否によって、拡張アクセス リストで以前許可(または高位のセキュリティ インターフェイスから低位のセキュリティ インターフェイスへ暗黙的に許可)した IP トラフィックがブロックされることはありません。ただし、EtherType ACE とのすべてのトラフィックを 明示的 に拒否する場合、IP と ARP のトラフィックが拒否されます。

NAT 使用時にアクセス リストで使用する IP アドレス

NAT を使用する場合、アクセス リストに指定する IP アドレスは、アクセス リストが適用されるインターフェイスによって異なります。つまり、そのインターフェイスに接続されたネットワーク上で有効なアドレスを使用する必要があります。使用されるアドレスは宛先によって決まるのではなく、インターフェイスによってだけ決まるというガイドラインは、着信アクセス リストと発信アクセス リストの両方に当てはまります。

たとえば、アクセス リストを内部インターフェイスの着信方向に適用するとします。内部の送信元アドレスが外部アドレスにアクセスするときに、内部の送信元アドレスに対して NAT を実行するように、セキュリティ アプライアンスを設定します。アクセス リストは内部インターフェイスに適用されるため、送信元アドレスは変換されていない元のアドレスです。外部アドレスは変換されないため、アクセス リストで使用される宛先アドレスは実際のアドレスです(図 18-1 を参照)。

図 18-1 アクセス リスト内の IP アドレス:送信元アドレスに対して使用される NAT

 

この例について、次のコマンドを参照してください。

hostname(config)# access-list INSIDE extended permit ip 10.1.1.0 255.255.255.0 host 209.165.200.225
hostname(config)# access-group INSIDE in interface inside
 

内部ホストへのアクセスを外部ホストに許可する場合は、外部インターフェイスに着信アクセス リストを適用します。内部ホストの変換後アドレスは外部ネットワーク上で使用できるアドレスであるため、変換後アドレスをアクセス リストで指定する必要があります(図 18-2 を参照)。

図 18-2 アクセス リスト内の IP アドレス:宛先アドレスに対して使用される NAT

 

この例について、次のコマンドを参照してください。

hostname(config)# access-list OUTSIDE extended permit ip host 209.165.200.225 host 209.165.201.5
hostname(config)# access-group OUTSIDE in interface outside
 

両方のインターフェイスに対して NAT を実行する場合は、そのインターフェイスにとって可視のアドレスを使用することに留意してください。図 18-3 では、内部ネットワークで変換後アドレスが示されるように、外部サーバがスタティック NAT を使用しています。

図 18-3 アクセス リスト内の IP アドレス:送信元アドレスと宛先アドレスに対して使用される NAT

 

この例について、次のコマンドを参照してください。

hostname(config)# access-list INSIDE extended permit ip 10.1.1.0 255.255.255.0 host 10.1.1.56
hostname(config)# access-group INSIDE in interface inside

拡張アクセス リストの追加

この項では、アクセス リストを追加する方法について説明します。次の項目を取り上げます。

「拡張アクセス リストの概要」

「透過ファイアウォールを介したブロードキャストとマルチキャスト トラフィックの許可」

「拡張 ACE の追加」

拡張アクセス リストの概要

拡張アクセス リストは、1 つ以上の ACE で構成されます。このリストには、行番号を指定して ACE、送信元アドレス、および宛先アドレスを挿入できます。また、ACE タイプによっては、プロトコル、ポート(TCP または UDP の場合)、または ICMP タイプ(ICMP の場合)も挿入できます。これらのパラメータはすべて、 access-list コマンドで指定できます。各パラメータ用のオブジェクト グループを使用することもできます。この項では、コマンドでパラメータを指定する方法について説明します。オブジェクト グループの使用方法については、「オブジェクト グループ化機能によるアクセス リストの簡略化」を参照してください。

ACE の末尾に追加できるロギング オプションについては、「アクセス リスト アクティビティのロギング」を参照してください。時間範囲オプションについては、「拡張アクセス リストのアクティベーションのスケジュール」を参照してください。

ルーテッド モードと透過モードの両方に対する TCP 接続および UDP 接続については、リターン トラフィックを許可するためのアクセス リストは必要ありません。セキュリティ アプライアンスは、確立された双方向接続のリターン トラフィックをすべて許可します。ただし、ICMP などのコネクションレス型プロトコルについては、セキュリティ アプライアンスは単方向セッションを確立します。したがって、(アクセス リストを送信元インターフェイスと宛先インターフェイスに適用することで)アクセス リストで双方向の ICMP を許可するか、ICMP 検査エンジンをイネーブルにする必要があります。ICMP 検査エンジンは、ICMP セッションを双方向接続として扱います。

インターフェイスの各方向の各タイプ(拡張および EtherType)に適用できるアクセス リストは 1 つだけです。同一のアクセス リストを複数のインターフェイスに適用できます。アクセス リストをインターフェイスに適用する方法の詳細については、「ネットワーク アクセスの許可または拒否」を参照してください。


) アクセス リスト コンフィギュレーションを変更したときに、既存の接続がタイムアウトするまで待機せずに新しいアクセス リスト情報を使用する必要がある場合は、clear local-host コマンドを使用して接続を消去できます。


透過ファイアウォールを介したブロードキャストとマルチキャスト トラフィックの許可

ルーテッド ファイアウォール モードでは、ブロードキャストとマルチキャスト トラフィックは、アクセス リストで許可されている場合でもブロックされます。これには、サポートされていないダイナミック ルーティング プロトコルおよび Dynamic Host Configuration Protocol(DHCP)(DHCP リレーを設定している場合を除く)が含まれます。透過ファイアウォール モードでは、すべての IP トラフィックの通過を許可できます。この機能は、たとえば、ダイナミック ルーティングが許可されていないマルチ コンテキスト モードで特に有用です。


) これらの特殊なタイプのトラフィックはコネクションレス型であるため、拡張アクセス リストを両方のインターフェイスに適用して、リターン トラフィックの通過を許可する必要があります。


表 18-2 に、透過ファイアウォールの通過を許可できる一般的なトラフィック タイプを示します。

 

表 18-2 透過ファイアウォールの特殊トラフィック

トラフィック タイプ
プロトコルまたはポート
注意

DHCP

UDP ポート 67 および 68

DHCP サーバがイネーブルの場合、セキュリティ アプライアンスは DHCP パケットの通過を拒否します。

EIGRP

プロトコル 88

--

OSPF

プロトコル 89

--

マルチキャスト ストリーム

UDP ポートは、アプリケーションによって異なります。

マルチキャスト ストリームは、常に Class D アドレス(224.0.0.0 ~ 239.x.x.x)に送信されます。

RIP(v1 または v2)

UDP ポート 520

--

拡張 ACE の追加

特定のアクセス リスト名に対して access-list コマンドを入力するときに、 line 番号を指定しないと、ACE はアクセス リストの末尾に追加されます。

ACE を追加するには、次のコマンドを入力します。

hostname(config)# access-list access_list_name [line line_number] [extended] {deny | permit} protocol source_address mask [operator port] dest_address mask [operator port | icmp_type] [inactive]
 

ヒント アクセス リスト名は、大文字で入力します。これによって、コンフィギュレーションで名前が見つけやすくなります。アクセス リストには、インターフェイスを表す名前(たとえば INSIDE)や、作成する目的を表す名前(たとえば NO_NAT や VPN)を付けることができます。


通常、プロトコルには ip キーワードを指定しますが、他のプロトコルも受け入れられます。プロトコル名のリストについては、「プロトコルとアプリケーション」を参照してください。

1 つのアドレスを指定する場合は、IP アドレスの前に host キーワードを入力します。この場合は、マスクを入力しません。すべてのアドレスを指定する場合は、アドレスとマスクの代わりに any キーワードを入力します。

tcp プロトコルまたは udp プロトコルの場合に限り、送信元ポートおよび宛先ポートを指定できます。使用できるキーワードおよび予約済みポート割り当てのリストについては、「TCP ポートと UDP ポート」を参照してください。DNS、Discard、Echo、Ident、NTP、RPC、SUNRPC、および Talk は、それぞれに TCP の定義と UDP の定義の両方が必要です。TACACS+ では、ポート 49 に対して 1 つの TCP 定義が必要です。

送信元または宛先によって使用されるポート番号を照合するには、演算子を使用します。使用できる演算子は、次のとおりです。

lt :より小さい

gt :より大きい

eq :等しい

neq :等しくない

range :両端を含む範囲。この演算子を使用する場合は、次のように 2 つのポート番号を指定します。

range 100 200
 

icmp プロトコルの場合に限り、ICMP タイプを指定できます。ICMP はコネクションレス型プロトコルであるため、(アクセス リストを送信元インターフェイスと宛先インターフェイスに適用することで)アクセス リストで両方向の ICMP を許可するか、ICMP 検査エンジンをイネーブルにする必要があります(「ICMP タイプ オブジェクト グループの追加」を参照)。ICMP 検査エンジンは、ICMP セッションをステートフル接続として扱います。ping を制御するには、 echo-reply 0 )(セキュリティ アプライアンスからホストへ)または echo 8 )(ホストからセキュリティ アプライアンスへ)を指定します。ICMP タイプのリストについては、「ICMP タイプ オブジェクト グループの追加」を参照してください。

ネットワーク マスクを指定するときは、指定方法が Cisco IOS ソフトウェアの access-list コマンドとは異なることに注意してください。セキュリティ アプライアンスでは、ネットワーク マスク(たとえば、Class C マスクの 255.255.255.0)が使用されます。Cisco IOS マスクでは、ワイルドカード ビット(たとえば、0.0.0.255)が使用されます。

ACE を非アクティブにするには、 inactive キーワードを使用します。再度イネーブルにするには、 inactive キーワードを使用せずに ACE 全体を入力します。この機能では、再イネーブル化を簡単にするために、非アクティブな ACE のレコードをコンフィギュレーションに保持できます。

ACE を削除するには、設定に表示されるコマンド シンタックス文字列全体を使用して no access-list コマンドを入力します。

hostname(config)# no access-list access_list_name [line line_number] [extended] {deny | permit} protocol source_address mask [operator port] dest_address mask [operator port | icmp_type] [inactive]
 

削除するエントリがアクセス リストの唯一のエントリである場合は、アクセス リスト全体が削除されます。

次の例を参照してください。

次のアクセス リストでは、すべてのホスト(アクセス リストを適用するインターフェイス上にあるすべてのホスト)に対して、セキュリティ アプライアンスの通過が許可されます。

hostname(config)# access-list ACL_IN extended permit ip any any
 

次のサンプル アクセス リストでは、192.168.1.0/24 上のホストが 209.165.201.0/27 ネットワークにアクセスすることが禁止されます。その他のアドレスはすべて許可されます。

hostname(config)# access-list ACL_IN extended deny tcp 192.168.1.0 255.255.255.0 209.165.201.0 255.255.255.224
hostname(config)# access-list ACL_IN extended permit ip any any
 

一部のホストだけにアクセスを制限する場合は、限定的な許可 ACE を入力します。デフォルトでは、明示的に許可しない限り、他のトラフィックはすべて拒否されます。

hostname(config)# access-list ACL_IN extended permit ip 192.168.1.0 255.255.255.0 209.165.201.0 255.255.255.224
 

次のアクセス リストでは、すべてのホスト(アクセス リスト適用先のインターフェイス上にあるすべてのホスト)がアドレス 209.165.201.29 の Web サイトにアクセスすることが禁止されます。他のトラフィックはすべて許可されます。

hostname(config)# access-list ACL_IN extended deny tcp any host 209.165.201.29 eq www
hostname(config)# access-list ACL_IN extended permit ip any any
 

EtherType アクセス リストの追加

透過ファイアウォール モードだけ

この項では、EtherType アクセス リストを追加する方法について説明します。次の項目を取り上げます。

「EtherType アクセス リストの概要」

「EtherType ACE の追加」

サポートされている EtherType

EtherType ACE は、16 ビットの 16 進数値で指定されるすべての EtherType を制御します。

EtherType アクセス リストでは、Ethernet V2 フレームがサポートされています。

802.3 形式フレームでは [type] フィールドではなく [length] フィールドが使用されるため、アクセス リストでは処理されません。

BPDUはアクセス リストで処理される唯一の例外です。BPDU は SNAP でカプセル化されており、セキュリティ アプライアンスは特別に BPDU を処理するように設計されています。

セキュリティ アプライアンスは、トランク ポート(Cisco 独自)BPDU を受信します。トランク BPDU のペイロード内部には VLAN 情報があるため、BPDU を許可した場合、セキュリティ アプライアンスはそのペイロードを発信 VLAN で修正します。


) フェールオーバーを使用している場合は、EtherType アクセス リストで両方のインターフェイスの BPDU を許可してブリッジング ループを回避する必要があります。


IP および ARP だけの暗黙的な許可

IPv4 トラフィックは、セキュリティの高いインターフェイスから低いインターフェイスに移動する場合、アクセス リストなしで自動的に透過ファイアウォールを通過できます。ARP は、アクセス リストなしで両方向に透過ファイアウォールを通過できます。ARP トラフィックは ARP 検査によって制御されます。

ただし、IPv4 と ARP 以外の EtherType のトラフィックを許可するには、高位のセキュリティ インターフェイスから低位のセキュリティ インターフェイスへのトラフィックである場合でも EtherType アクセス リストを適用する必要があります。

EtherType はコネクションレス型であるため、トラフィックを両方向に通過させる必要がある場合は、両方のインターフェイスにアクセス リストを適用する必要があります。

アクセス リストの末尾にある暗黙的および明示的拒否 ACE

EtherType アクセス リストの場合、アクセス リストの末尾にある暗黙的な拒否は、IP トラフィックや ARP には影響しません。たとえば、EtherType 8037 を許可する場合、アクセス リストの末尾にある暗黙的な拒否によって、拡張アクセス リストで以前許可(または高位のセキュリティ インターフェイスから低位のセキュリティ インターフェイスへ暗黙的に許可)した IP トラフィックがブロックされることはありません。ただし、EtherType ACE とのすべてのトラフィックを 明示的 に拒否する場合、IP と ARP のトラフィックが拒否されます。

IPv6 の未サポート

EtherType ACE は、IPv6 トラフィックを許可しません。これは、IPv6 EtherType を指定した場合も同じです。

同じインターフェイス上での拡張アクセス リストと EtherType アクセス リストの使用

インターフェイスの各方向の各タイプ(拡張および EtherType)に適用できるアクセス リストは 1 つだけです。同一のアクセス リストを複数のインターフェイスに適用することもできます。

マルチプロトコル ラベル スイッチング(MPLS)の許可

MPLS を許可する場合は、Label Distribution Protocol(LDP; ラベル配布プロトコル)および Tag Distribution Protocol(TDP; タグ配布プロトコル)の TCP 接続がセキュリティ アプライアンスを経由して確立されるようにしてください。これには、LDP セッションまたは TDP セッション用の router-id としてセキュリティ アプライアンス インターフェイス上の IP アドレスを使用するように、セキュリティ アプライアンスに接続されている両方の MPLS ルータを構成します (LDP および TDP を使用することにより、MPLS ルータは、転送するパケットに使用するラベル(アドレス)をネゴシエートできるようになります)。

Cisco IOS ルータで、使用プロトコル(LDP または TDP)に適したコマンドを入力します。 interface は、セキュリティ アプライアンスに接続されているインターフェイスです。

hostname(config)# mpls ldp router-id interface force
 

または

hostname(config)# tag-switching tdp router-id interface force
 

EtherType ACE の追加

EtherType ACE を追加するには、次のコマンドを入力します。

hostname(config)# access-list access_list_name ethertype {permit | deny} {ipx | bpdu | mpls-unicast | mpls-multicast | any | hex_number}
 

EtherType ACE を削除するには、設定に表示されるコマンド シンタックス文字列全体を使用して no access-list コマンドを入力します。

ehostname(config)# no access-list access_list_name ethertype {permit | deny} {ipx | bpdu | mpls-unicast | mpls-multicast | any | hex_number}
 

hex_number は、0x600 以上の 16 ビット 16 進数値で指定できる任意の EtherType です。EtherType のリストについては、 http://www.ietf.org/rfc/rfc1700.txt で、RFC 1700「Assigned Numbers」を参照してください。


) EtherType アクセス リストに deny all が設定されている場合、すべてのイーサネット フレームが廃棄されます。その場合でも、オートネゴシエーションなどの物理プロトコル トラフィックだけは許可されます。


特定のアクセス リスト名に対して access-list コマンドを入力すると、ACE はアクセス リストの末尾に追加されます。


ヒント access_list_name は、大文字で入力します。これにより、コンフィギュレーションで名前が見つけやすくなります。アクセス リストには、インターフェイスを表す名前(たとえば INSIDE)や、目的を表す名前(たとえば MPLS や Internetwork Packet Exchange(IPX))を付けるとよいでしょう。


たとえば、次のサンプル アクセス リストでは、内部インターフェイスで発信される一般的な EtherType が許可されます。

hostname(config)# access-list ETHER ethertype permit ipx
hostname(config)# access-list ETHER ethertype permit bpdu
hostname(config)# access-list ETHER ethertype permit mpls-unicast
hostname(config)# access-group ETHER in interface inside
 

次のアクセス リストでは、一部の EtherType はセキュリティ アプライアンスを通過することが許可されますが、IPX は拒否されます。

hostname(config)# access-list ETHER ethertype deny ipx
hostname(config)# access-list ETHER ethertype permit 0x1234
hostname(config)# access-list ETHER ethertype permit bpdu
hostname(config)# access-list ETHER ethertype permit mpls-unicast
hostname(config)# access-group ETHER in interface inside
hostname(config)# access-group ETHER in interface outside
 

次のアクセス リストでは、両方のインターフェイスで EtherType 0x1256 のトラフィックが拒否されますが、他のトラフィックはすべて許可されます。

hostname(config)# access-list nonIP ethertype deny 1256
hostname(config)# access-list nonIP ethertype permit any
hostname(config)# access-group ETHER in interface inside
hostname(config)# access-group ETHER in interface outside

標準アクセス リストの追加

シングル コンテキスト モードだけ

標準アクセス リストでは、OSPF ルートの宛先 IP アドレスを指定します。このアクセス リストは、OSPF 再配布のルートマップに使用できます。標準アクセス リストをインターフェイスに適用してトラフィックを制御することはできません。

次に、標準 ACE を追加するコマンドを示します。アクセス リストの末尾にもう 1 つ ACE を追加するには、同じアクセス リスト名を指定して別の access-list コマンドを入力します。「ルートマップの定義」を参照してアクセス リストを適用します。

ACE を追加するには、次のコマンドを入力します。

hostname(config)# access-list access_list_name standard {deny | permit} {any | ip_address mask}
 

次のサンプル アクセス リストでは、192.168.1.0/24 へのルートが指定されています。

hostname(config)# access-list OSPF standard permit 192.168.1.0 255.255.255.0
 

ACE を削除するには、設定に表示されるコマンド シンタックス文字列全体を使用して no access-list コマンドを入力します。

hostname(config)# no access-list access_list_name standard {deny | permit} {any | ip_address mask}
 

Webtype アクセス リストの追加

Webtype アクセス リストは、クライアントレス SSL VPN のフィルタリングをサポートする設定に追加されるアクセス リストです。

次のワイルドカード文字を使用して、Webtype アクセス リスト エントリで複数のワイルドカードを定義できます。

どの文字とも一致させないか、任意の数の文字と一致させるには、アスタリスク「*」を入力します。

任意の 1 文字と正確に一致させるには、疑問符「?」を入力します。

範囲内の任意の 1 文字と一致する範囲演算子を作成するには、角カッコ「[]」を入力します。

WebVPN のフィルタリングをサポートするコンフィギュレーションにアクセス リストを追加するには、次のコマンドを入力します。

hostname(config)# access-list access_list_name webtype {deny | permit} url [url_string | any]
 

Webtype アクセス リストを削除するには、設定に表示されるシンタックス文字列全体を使用して no access-list コマンドを入力します。

hostname(config)# access-list access_list_name webtype {deny | permit} url [url_string | any]
 

次のシナリオは、特定の CIFS 共有へのアクセスをディセーブルにするために Webtype アクセス リストを適用する方法を示しています。

このシナリオでは、「Marketing_Reports」と「Sales_Reports」という名前の 2 つのサブフォルダが含まれる「shares」という名前のルート フォルダがあります。「shares/Marketing_Reports」フォルダへのアクセスを特に拒否する必要があります。

access-list CIFS_Avoid webtype deny url cifs://172.16.10.40/shares/Marketing_Reports.
 

ただし、明示的な「すべて拒否」のために、上のアクセス リストによって、ルート フォルダ(「shares」)を含むすべてのサブフォルダ(「shares/Sales_Reports」と「shares/Marketing_Reports」)がアクセス不可になってしまいます。

この問題を修正するには、ルート フォルダと残りのサブフォルダへのアクセスを許可する新しいアクセス リストを追加します。

access-list CIFS_Allow webtype permit url cifs://172.16.10.40/shares*
 

ACE の末尾に追加できるロギング オプションについては、「アクセス リスト アクティビティのロギング」を参照してください。

ここでの例は、Webtype アクセス リストでのワイルドカードの使用方法を示しています。

次の例は、http://www.cisco.com/ や http://wwz.caco.com/ などの URL と一致します。

access-list test webtype permit url http://ww?.c*co*/
 

次の例は、http://www.cisco.com や ftp://wwz.carrier.com などの URL と一致します。

access-list test webtype permit url *://ww?.c*co*/
 

次の例は、http://www.cisco.com:80 や https://www.cisco.com:81 などの URL と一致します。

access-list test webtype permit url *://ww?.c*co*:8[01]/
 

上記の例の範囲演算子「[]」は、文字 0 または 1 のいずれかが入ることを指定します。

次の例は、http://www.google.com や http://www.boogie.com などの URL と一致します。

access-list test webtype permit url http://www.[a-z]oo?*/
 

上記の例の範囲演算子「[]」は、 a z の範囲内にある任意の文字が入ることを指定します。

次の例は、http://www.cisco.com/anything/crazy/url/ddtscgiz などの URL と一致します。

access-list test webtype permit url htt*://*/*cgi?*
 

) 任意の http URL と一致させるには、http://* を入力する前の方法の代わりに、http://*/* を入力する必要があります。


オブジェクト グループ化機能によるアクセス リストの簡略化

この項では、オブジェクト グループ化機能を使用してアクセス リストの作成とメンテナンスを簡略化する方法について説明します。

次の項目を取り上げます。

「オブジェクト グループ化機能の動作」

「オブジェクト グループの追加」

「オブジェクト グループのネスト」

「オブジェクト グループの表示」

「オブジェクト グループの削除」

「アクセス リストでのオブジェクト グループの使用」

オブジェクト グループ化機能の動作

類似オブジェクトをグループにまとめると、オブジェクトごとに ACE を入力する代わりに、ACE でオブジェクト グループを使用できるようになります。次のタイプのオブジェクト グループを作成できます。

プロトコル

ネットワーク

サービス

ICMP タイプ

たとえば、次の 3 つのオブジェクト グループを考えてみます。

MyServices:内部ネットワークへのアクセスが許可されるサービス要求の TCP および UDP ポート番号を含む。

TrustedHosts:最大範囲のサービスとサーバへのアクセスが許可されるホスト アドレスとネットワーク アドレスを含む。

PublicServers:最大のアクセスが提供されるサーバのホスト アドレスを含む。

上記のグループを作成すると、1 つの ACE を使用して、信頼できるホストが公開サーバのグループに特定のサービス要求を許可することが可能になります。

オブジェクト グループを他のオブジェクト グループにネストすることもできます。


) ACE システム制限は、拡張アクセス リストに適用されます。ACE でオブジェクト グループを使用すると、入力する実際の ACE の数は少なくなりますが、拡張 ACE の数はオブジェクト グループがない場合と同じです。多くの場合、オブジェクト グループを使用すると、手動で追加した場合より多くの ACE が作成されます。これは、手動で ACE を作成した場合、オブジェクト グループで作成した場合より多くのアドレスを集約することになるためです。アクセス リストの拡張 ACE の数を表示するには、show access-list access_list_name コマンドを入力します。


オブジェクト グループの追加

この項では、オブジェクト グループを追加する方法について説明します。

次の項目を取り上げます。

「プロトコル オブジェクト グループの追加」

「ネットワーク オブジェクト グループの追加」

「サービス オブジェクト グループの追加」

「ICMP タイプ オブジェクト グループの追加」

プロトコル オブジェクト グループの追加

プロトコル オブジェクト グループを追加または変更するには、次の手順を実行します。グループを追加した後、同じグループ名でこの手順を繰り返し、追加のオブジェクトを指定することで、必要に応じてさらにオブジェクトを追加できます。既存のオブジェクトを再入力する必要はありません。設定済みのコマンドは、コマンドの no 形式で削除するまで残ります。

プロトコル グループを追加するには、次の手順を実行します。


ステップ 1 次のコマンドを入力して、プロトコル グループを追加します。

hostname(config)# object-group protocol grp_id
 

grp_id は、最大 64 文字のテキスト文字列です。

プロンプトがプロトコル コンフィギュレーション モードに変わります。

ステップ 2 (オプション)説明を追加するには、次のコマンドを入力します。

hostname(config-protocol)# description text
 

説明には、最大 200 文字を使用できます。

ステップ 3 プロトコルごとに次のコマンドを入力して、グループ内にプロトコルを定義します。

hostname(config-protocol)# protocol-object protocol
 

protocol は、特定の IP プロトコルの数値識別子(1 ~ 254)またはキーワード識別子(たとえば、 icmp tcp 、または udp )です。すべての IP プロトコルを含めるには、キーワード ip を使用します。指定できるプロトコルのリストについては、「プロトコルとアプリケーション」を参照してください。


 

たとえば、TCP、UDP、および ICMP のプロトコル グループを作成するには、次のコマンドを入力します。

hostname(config)# object-group protocol tcp_udp_icmp
hostname(config-protocol)# protocol-object tcp
hostname(config-protocol)# protocol-object udp
hostname(config-protocol)# protocol-object icmp

ネットワーク オブジェクト グループの追加

ネットワーク オブジェクト グループを追加または変更するには、次の手順を実行します。グループを追加した後、同じグループ名でこの手順を繰り返し、追加のオブジェクトを指定することで、必要に応じてさらにオブジェクトを追加できます。既存のオブジェクトを再入力する必要はありません。設定済みのコマンドは、コマンドの no 形式で削除するまで残ります。


) ネットワーク オブジェクト グループは、アクセス リストのタイプに応じて、IPv4 アドレスおよび IPv6 アドレスをサポートします。IPv6 アクセス リストの詳細については、「IPv6 アクセス リストの設定」を参照してください。


ネットワーク グループを追加するには、次の手順を実行します。


ステップ 1 次のコマンドを入力して、ネットワーク グループを追加します。

hostname(config)# object-group network grp_id
 

grp_id は、最大 64 文字のテキスト文字列です。

プロンプトがネットワーク コンフィギュレーション モードに変わります。

ステップ 2 (オプション)説明を追加するには、次のコマンドを入力します。

hostname(config-network)# description text
 

説明には、最大 200 文字を使用できます。

ステップ 3 ネットワークまたはアドレスごとに次のコマンドを入力して、グループ内にネットワークを定義します。

hostname(config-network)# network-object {host ip_address | ip_address mask}
 


 

たとえば、3 人の管理者の IP アドレスを含むネットワーク グループを作成するには、次のコマンドを入力します。

hostname(config)# object-group network admins
hostname(config-network)# description Administrator Addresses
hostname(config-network)# network-object host 10.1.1.4
hostname(config-network)# network-object host 10.1.1.78
hostname(config-network)# network-object host 10.1.1.34

サービス オブジェクト グループの追加

サービス オブジェクト グループを追加または変更するには、次の手順を実行します。グループを追加した後、同じグループ名でこの手順を繰り返し、追加のオブジェクトを指定することで、必要に応じてさらにオブジェクトを追加できます。既存のオブジェクトを再入力する必要はありません。設定済みのコマンドは、コマンドの no 形式で削除するまで残ります。

サービス グループを追加するには、次の手順を実行します。


ステップ 1 次のコマンドを入力して、サービス グループを追加します。

hostname(config)# object-group service grp_id {tcp | udp | tcp-udp}
 

grp_id は、最大 64 文字のテキスト文字列です。

tcp udp 、または tcp-udp のいずれかのキーワードで、追加するサービス(ポート)のプロトコルを指定します。ご使用のサービスが同じポート番号で TCP と UDP の両方を使用している場合は、 tcp-udp キーワードを入力します。たとえば、DNS(ポート 53)の場合です。

プロンプトがサービス コンフィギュレーション モードに変わります。

ステップ 2 (オプション)説明を追加するには、次のコマンドを入力します。

hostname(config-service)# description text
 

説明には、最大 200 文字を使用できます。

ステップ 3 ポートまたはポート範囲ごとに次のコマンドを入力して、グループ内にポートを定義します。

hostname(config-service)# port-object {eq port | range begin_port end_port}
 

使用できるキーワードおよび予約済みポート割り当てのリストについては、「プロトコルとアプリケーション」を参照してください。


 

たとえば、DNS(TCP/UDP)、LDAP(TCP)、および RADIUS(UDP)が含まれたサービス グループを作成するには、次のコマンドを入力します。

hostname(config)# object-group service services1 tcp-udp
hostname(config-service)# description DNS Group
hostname(config-service)# port-object eq domain
 
hostname(config-service)# object-group service services2 udp
hostname(config-service)# description RADIUS Group
hostname(config-service)# port-object eq radius
hostname(config-service)# port-object eq radius-acct
 
hostname(config-service)# object-group service services3 tcp
hostname(config-service)# description LDAP Group
hostname(config-service)# port-object eq ldap

ICMP タイプ オブジェクト グループの追加

ICMP タイプ オブジェクト グループを追加または変更するには、次の手順を実行します。グループを追加した後、同じグループ名でこの手順を繰り返し、追加のオブジェクトを指定することで、必要に応じてさらにオブジェクトを追加できます。既存のオブジェクトを再入力する必要はありません。設定済みのコマンドは、コマンドの no 形式で削除するまで残ります。

ICMP タイプ グループを追加するには、次の手順を実行します。


ステップ 1 次のコマンドを入力して、ICMP タイプ グループを追加します。

hostname(config)# object-group icmp-type grp_id
 

grp_id は、最大 64 文字のテキスト文字列です。

プロンプトが ICMP タイプ コンフィギュレーション モードに変わります。

ステップ 2 (オプション)説明を追加するには、次のコマンドを入力します。

hostname(config-icmp-type)# description text
 

説明には、最大 200 文字を使用できます。

ステップ 3 タイプごとに次のコマンドを入力して、グループ内に ICMP タイプを定義します。

hostname(config-icmp-type)# icmp-object icmp_type
 

ICMP タイプのリストについては、「ICMP タイプ」を参照してください。


 

たとえば、echo-reply および echo(ping を制御するために使用)が含まれる ICMP タイプ グループを作成するには、次のコマンドを入力します。

hostname(config)# object-group icmp-type ping
hostname(config-service)# description Ping Group
hostname(config-icmp-type)# icmp-object echo
hostname(config-icmp-type)# icmp-object echo-reply

オブジェクト グループのネスト

オブジェクト グループを同じタイプの別のオブジェクト グループ内にネストするには、まず、「オブジェクト グループの追加」を参照して、ネストするグループを作成します。その後、次の手順を実行します。


ステップ 1 次のコマンドを入力して、下位に別のオブジェクト グループをネストするオブジェクト グループを追加または編集します。

hostname(config)# object-group {{protocol | network | icmp-type} grp_id | service grp_id {tcp | udp | tcp-udp}}
 

ステップ 2 次のコマンドを入力して、指定したグループをステップ 1 で指定したオブジェクト グループの下位に追加します。

hostname(config-group_type)# group-object grp_id
 

ネストするグループは、同じタイプである必要があります。

ネストしたグループ オブジェクトと通常のオブジェクトは、単一のオブジェクト グループ内でさまざまに組み合せて突き合せることができます。


 

たとえば、さまざまな部門に所属する特権ユーザのネットワーク オブジェクト グループを次のように作成します。

hostname(config)# object-group network eng
hostname(config-network)# network-object host 10.1.1.5
hostname(config-network)# network-object host 10.1.1.9
hostname(config-network)# network-object host 10.1.1.89
 
hostname(config-network)# object-group network hr
hostname(config-network)# network-object host 10.1.2.8
hostname(config-network)# network-object host 10.1.2.12
 
hostname(config-network)# object-group network finance
hostname(config-network)# network-object host 10.1.4.89
hostname(config-network)# network-object host 10.1.4.100
 

その後、3 つすべてのグループを次のようにネストします。

hostname(config)# object-group network admin
hostname(config-network)# group-object eng
hostname(config-network)# group-object hr
hostname(config-network)# group-object finance
 

ACE では次のように管理オブジェクト グループを指定するだけです。

hostname(config)# access-list ACL_IN extended permit ip object-group admin host 209.165.201.29

アクセス リストでのオブジェクト グループの使用

アクセス リストでオブジェクト グループを使用するには、通常のプロトコル( protocol )、ネットワーク( source_address mask など)、サービス( operator port )、または ICMP タイプ( icmp_type )の各パラメータを object-group grp_id パラメータで置き換えます。

たとえば、 access-list { tcp | udp } コマンドで使用可能なすべてのパラメータにオブジェクト グループを使用するには、次のコマンドを入力します。

hostname(config)# access-list access_list_name [line line_number] [extended] {deny | permit} {tcp | udp} object-group nw_grp_id [object-group svc_grp_id] object-group nw_grp_id [object-group svc_grp_id] [log [[level] [interval secs] | disable | default]] [inactive | time-range time_range_name]
 

すべてのパラメータにオブジェクト グループを使用する必要はありません。たとえば、送信元アドレスにオブジェクト グループを使用しても、宛先アドレスはアドレスとマスクで指定できます。

次に示す、オブジェクト グループを使用しない通常のアクセス リストでは、内部ネットワーク上のいくつかのホストがいくつかの Web サーバへのアクセスを禁止されます。他のトラフィックはすべて許可されます。

hostname(config)# access-list ACL_IN extended deny tcp host 10.1.1.4 host 209.165.201.29 eq www
hostname(config)# access-list ACL_IN extended deny tcp host 10.1.1.78 host 209.165.201.29 eq www
hostname(config)# access-list ACL_IN extended deny tcp host 10.1.1.89 host 209.165.201.29 eq www
hostname(config)# access-list ACL_IN extended deny tcp host 10.1.1.4 host 209.165.201.16 eq www
hostname(config)# access-list ACL_IN extended deny tcp host 10.1.1.78 host 209.165.201.16 eq www
hostname(config)# access-list ACL_IN extended deny tcp host 10.1.1.89 host 209.165.201.16 eq www
hostname(config)# access-list ACL_IN extended deny tcp host 10.1.1.4 host 209.165.201.78 eq www
hostname(config)# access-list ACL_IN extended deny tcp host 10.1.1.78 host 209.165.201.78 eq www
hostname(config)# access-list ACL_IN extended deny tcp host 10.1.1.89 host 209.165.201.78 eq www
hostname(config)# access-list ACL_IN extended permit ip any any
hostname(config)# access-group ACL_IN in interface inside
 

2 つのネットワーク オブジェクト グループ(内部ホスト用に 1 つ、Web サーバ用に 1 つ)を作成すると、コンフィギュレーションが簡略化され、簡単に修正してホストを追加できるようになります。

hostname(config)# object-group network denied
hostname(config-network)# network-object host 10.1.1.4
hostname(config-network)# network-object host 10.1.1.78
hostname(config-network)# network-object host 10.1.1.89
 
hostname(config-network)# object-group network web
hostname(config-network)# network-object host 209.165.201.29
hostname(config-network)# network-object host 209.165.201.16
hostname(config-network)# network-object host 209.165.201.78
 
hostname(config-network)# access-list ACL_IN extended deny tcp object-group denied object-group web eq www
hostname(config)# access-list ACL_IN extended permit ip any any
hostname(config)# access-group ACL_IN in interface inside

オブジェクト グループの表示

現在設定されているオブジェクト グループのリストを表示するには、次のコマンドを入力します。

hostname(config)# show object-group [protocol | network | service | icmp-type | id grp_id]
 

パラメータを指定しないでコマンドを入力すると、システムは設定されているオブジェクト グループをすべて表示します。

次に、 show object-group コマンドの出力例を示します。

hostname# show object-group
object-group network ftp_servers
description: This is a group of FTP servers
network-object host 209.165.201.3
network-object host 209.165.201.4
object-group network TrustedHosts
network-object host 209.165.201.1
network-object 192.168.1.0 255.255.255.0
group-object ftp_servers

オブジェクト グループの削除

オブジェクト グループを削除するには、次のコマンドのいずれかを入力します。


) アクセス リストで使用している場合は、オブジェクト グループを削除したり、オブジェクト グループを空にしたりすることはできません。


特定のオブジェクト グループを削除するには、次のコマンドを入力します。

hostname(config)# no object-group grp_id
 

指定したタイプのオブジェクト グループをすべて削除するには、次のコマンドを入力します。

hostname(config)# clear object-group [protocol | network | services | icmp-type]
 

タイプを入力しない場合、すべてのオブジェクト グループが削除されます。

アクセス リストへのコメントの追加

拡張アクセス リスト、EtherType アクセス リスト、標準アクセス リストを含む任意のアクセス リストに、エントリについてのコメントを追加できます。コメントにより、アクセス リストが理解しやすくなります。

最後に入力した access-list コマンドの後にコメントを追加するには、次のコマンドを入力します。

hostname(config)# access-list access_list_name remark text
 

いずれかの access-list コマンドの前にコメントを入力すると、コメントはアクセス リストの最初の行に表示されます。

no access-list access_list_name コマンドを使用してアクセス リストを削除すると、コメントもすべて削除されます。

テキストは 100 文字まで指定できます。テキストの先頭にスペースを入力できます。末尾のスペースは無視されます。

たとえば、各 ACE の前にコメントを追加できます。コメントはその場所でアクセス リストに表示されます。コメントの開始位置にダッシュ(-)を入力すると、ACE と区別しやすくなります。

hostname(config)# access-list OUT remark - this is the inside admin address
hostname(config)# access-list OUT extended permit ip host 209.168.200.3 any
hostname(config)# access-list OUT remark - this is the hr admin address
hostname(config)# access-list OUT extended permit ip host 209.168.200.4 any
 

拡張アクセス リストのアクティベーションのスケジュール

ACE に時間範囲を適用することで、1 日および週の特定の時刻に各 ACE がアクティブになるようにスケジュールできます。この項は、次の内容で構成されています。

「時間範囲の追加」

「ACE への時間範囲の適用」

時間範囲の追加

時間ベースのアクセス リストを実装するために時間範囲を追加するには、次の手順を実行します。


ステップ 1 次のコマンドを入力して、時間範囲の名前を特定します。

hostname(config)# time-range name
 

ステップ 2 時間範囲を定期的な時間範囲または絶対的な時間範囲として指定します。


) ACL が非アクティブになるまで、指定した終了時刻の後で約 80 ~ 100 秒の遅延が発生することがあります。たとえば、指定した終了時刻が 3:50 の場合は、終了時刻が含まれるためにコマンドは 3:51:00 ~ 3:51:59 の間に選択されます。コマンドの選択後に、セキュリティ アプライアンスは、現在実行中のタスクをすべて終了してから、ACL を非アクティブにするためのコマンドを使用します。


time-range コマンドごとに、複数の定期的なエントリが許可されます。 time-range コマンドに absolute 値と periodic 値の両方が指定されている場合、 periodic コマンドは absolute の開始時刻になって初めて評価され、 absolute の終了時刻に達した後は評価されません。

定期的な時間範囲:

hostname(config-time-range)# periodic days-of-the-week time to [days-of-the-week] time
 

days-of-the-week には次の値を指定できます。

monday tuesday wednesday thursday friday saturday 、および sunday

daily

weekdays

weekend

time の形式は、 hh : mm です。たとえば、8:00 は午前 8 時、20:00 は午後 8 時です。

絶対的な時間範囲:

hostname(config-time-range)# absolute start time date [end time date]
 

time の形式は、 hh : mm です。たとえば、8:00 は午前 8 時、20:00 は午後 8 時です。

date の形式は、 day month year です。たとえば、 1 january 2006 と指定します。


 

次は、2006 年 1 月 1 日午前 8 時に始まる絶対的な 時間範囲の例です。終了日時が指定されていないため、時間範囲は無期限に有効です。

hostname(config)# time-range for2006
hostname(config-time-range)# absolute start 8:00 1 january 2006
 

次は、平日の午前 8 時~午後 6 時に毎週繰り返される定期的な時間範囲の例です。

hostname(config)# time-range workinghours
hostname(config-time-range)# periodic weekdays 8:00 to 18:00

 

ACE への時間範囲の適用

時間範囲を ACE に適用するには、次のコマンドを入力します。

hostname(config)# access-list access_list_name [extended] {deny | permit}...[time-range name]
 

access-list コマンドの完全なシンタックスについては、「拡張アクセス リストの追加」を参照してください。


) ACE のロギングもイネーブルにするには、log キーワードを time-range キーワードの前に使用します。inactive キーワードを使用して ACE をディセーブルにする場合は、inactive キーワードを最後のキーワードとして使用します。


次の例では、「Sales」という名前のアクセス リストを「New_York_Minute」という名前の時間範囲にバインドしています。

hostname(config)# access-list Sales line 1 extended deny tcp host 209.165.200.225 host 209.165.201.1 time-range New_York_Minute
 

アクセス リスト アクティビティのロギング

この項では、拡張アクセス リストおよび Webtype アクセス リストのアクセス リスト ロギングを設定する方法について説明します。

次の項目を取り上げます。

「アクセス リスト ロギングの概要」

「アクセス コントロール エントリのロギングの設定」

「拒否フローの管理」

アクセス リスト ロギングの概要

デフォルトでは、拡張 ACE または Webtype ACE でトラフィックが定義されている場合、セキュリティ アプライアンスは、拒否されたパケットごとに次の形式のシステム メッセージ 106023 を生成します。

%ASA|PIX-4-106023: Deny protocol src [interface_name:source_address/source_port] dst interface_name:dest_address/dest_port [type {string}, code {code}] by access_group acl_id
 

セキュリティ アプライアンスが攻撃を受けた場合、拒否されたパケットを示すシステム メッセージの数が非常に大きくなることがあります。代わりに、システム メッセージ 106100 を使用するロギングをイネーブルにすることをお勧めします。このメッセージは各 ACE の統計情報を示すもので、これを使用することにより、生成されるシステム メッセージの数を制限できます。または、すべてのロギングをディセーブルにする方法もあります。


) ロギング メッセージは、アクセス リストの ACE だけによって生成されます。アクセス リストの末尾にある暗黙的な拒否によって生成されることはありません。拒否されたすべてのトラフィックによってメッセージが生成されるようにする場合は、次のようにして、手動でアクセス リストの末尾に暗黙的な ACE を追加します。

hostname(config)# access-list TEST deny ip any any log


 

拡張 access-list コマンドの末尾の log オプションを使用すると、次の動作を設定できます。

メッセージ 106023 の代わりにメッセージ 106100 をイネーブルにする。

すべてのロギングをディセーブルにする。

メッセージ 106023 を使用するデフォルト ロギングに戻る。

システム メッセージ 106100 は次の形式をとります。

%ASA|PIX-n-106100: access-list acl_id {permitted | denied} protocol interface_name/source_address(source_port) -> interface_name/dest_address(dest_port) hit-cnt number ({first hit | number-second interval})
 

メッセージ 106100 のロギングがイネーブルで、パケットが ACE と一致した場合、セキュリティ アプライアンスはフロー エントリを作成して、指定された時間内で受信したパケットの数を追跡します。セキュリティ アプライアンスは、最初のヒットがあったとき、および各間隔の終わりにシステム メッセージを生成し、その間隔におけるヒットの合計数を示します。各時間間隔が終了した時点で、セキュリティ アプライアンスはヒット カウントを 0 にリセットします。時間間隔内で ACE に一致したパケットが存在しないと、セキュリティ アプライアンスはフロー エントリを削除します。

フローは、送信元 IP アドレス、宛先 IP アドレス、プロトコル、およびポートで定義されます。同じ 2 つのホスト間の新しい接続では、送信元ポートが異なる場合があるため、接続のための新しいフローが作成されると、同じフローの増加は示されない場合があります。ロギング フローの数を制限するには、「拒否フローの管理」を参照してください。

確立された接続に属する、許可されたパケットをアクセス リストでチェックする必要はありません。最初のパケットだけがロギングされ、ヒット数に含められます。ICMP などのコネクションレス型プロトコルの場合は、許可されているパケットもすべてロギングされ、拒否されたパケットはすべてロギングされます。

このシステム メッセージの詳細については、『 Cisco Security Appliance Logging Configuration and System Log Messages 』を参照してください。

アクセス コントロール エントリのロギングの設定

ACE のロギングを設定するには、 log オプションに関する次の情報を参照してください。

hostname(config)# access-list access_list_name [extended] {deny | permit}...[log [[level] [interval secs] | disable | default]]
 

access-list コマンドの完全なシンタックスについては、「拡張アクセス リストの追加」および 「Webtype アクセス リストの追加」を参照してください。

引数を指定せずに log オプションを入力すると、システム ログ メッセージ 106100 はデフォルト レベル(6)とデフォルト間隔(300 秒)でイネーブルになります。次のオプションを参照してください。

level :0 ~ 7 の重大度。デフォルトは 6 です。

interval secs :システム メッセージ間の時間間隔(秒)。1 ~ 600 で指定します。デフォルトは 300 です。この値は、非アクティブ フローを削除するタイムアウト値としても使用されます。

disable :すべてのアクセス リスト ロギングをディセーブルにします。

default :メッセージ 106023 のロギングをイネーブルにします。この設定は、 log オプションがない場合と同じです。

たとえば、次のアクセス リストを設定します。

hostname(config)# access-list outside-acl permit ip host 1.1.1.1 any log 7 interval 600
hostname(config)# access-list outside-acl permit ip host 2.2.2.2 any
hostname(config)# access-list outside-acl deny ip any any log 2
hostname(config)# access-group outside-acl in interface outside
 

パケットが outside-acl の最初の ACE によって許可された場合、セキュリティ アプライアンスは次のシステム メッセージを生成します。

%ASA|PIX-7-106100: access-list outside-acl permitted tcp outside/1.1.1.1(12345) -> inside/192.168.1.1(1357) hit-cnt 1 (first hit)
 

この接続の 20 個の後続パケットは、外部インターフェイスに到達しますが、そのトラフィックをアクセス リストでチェックする必要はなく、ヒット数も増加しません。

指定した 10 分間のうちに同じホストによる接続が新たに 1 つ開始された場合(かつ、送信元ポートと宛先ポートが変わっていない場合)、ヒット数は 1 増加し、10 分間の終わりに次のメッセージが表示されます。

%ASA|PIX-7-106100: access-list outside-acl permitted tcp outside/1.1.1.1(12345)-> inside/192.168.1.1(1357) hit-cnt 2 (600-second interval)
 

パケットが 3 番目の ACE によって拒否された場合、セキュリティ アプライアンスは次のシステム メッセージを生成します。

%ASA|PIX-2-106100: access-list outside-acl denied ip outside/3.3.3.3(12345) -> inside/192.168.1.1(1357) hit-cnt 1 (first hit)
 

5 分間(デフォルト)のうちにさらに 20 回の試行が行われ、5 分間の終わりに次のメッセージが表示されます。

%ASA|PIX-2-106100: access-list outside-acl denied ip outside/3.3.3.3(12345) -> inside/192.168.1.1(1357) hit-cnt 21 (300-second interval)
 

拒否フローの管理

メッセージ 106100 のロギングがイネーブルで、パケットが ACE と一致した場合、セキュリティ アプライアンスはフロー エントリを作成して、指定された時間内で受信したパケットの数を追跡します。セキュリティ アプライアンスでは、ACE 用のロギング フローを最大 32 K 保持できます。どの時点でも大量のフローが同時に存在する可能性があります。メモリおよび CPU リソースが無制限に消費されないようにするために、セキュリティ アプライアンスは同時 拒否 フロー数に制限を設定します。この制限は、拒否フローに対してだけ設定されます(許可フローには設定されません)。これは、拒否フローは攻撃を示している可能性があるためです。制限に達すると、セキュリティ アプライアンスは既存の拒否フローが期限切れになるまでロギング用の新しい拒否フローを作成しません。

たとえば、DoS 攻撃(サービス拒絶攻撃)が開始された場合、セキュリティ アプライアンスは大量の拒否フローを短時間のうちに作成する可能性があります。拒否フロー数を制限することにより、メモリおよび CPU リソースが無制限に消費されないようになります。

拒否フローの最大数に達すると、セキュリティ アプライアンスは次のようなシステム メッセージ 106100 を発行します。

%ASA|PIX-1-106101: The number of ACL log deny-flows has reached limit (number).
 

拒否フローの最大数の設定、および拒否フロー アラート メッセージ(106101)間の間隔の設定には、次のコマンドを入力します。

セキュリティ アプライアンスがロギングを停止するまでの間にコンテキストごとに許可する拒否フローの最大数を設定するには、次のコマンドを入力します。

hostname(config)# access-list deny-flow-max number
 

number には、1 ~ 4096 を指定します。4096 分がデフォルトです。

拒否フローが最大数に達したことを示すシステム メッセージ(番号 106101)間の時間間隔を設定するには、次のコマンドを入力します。

hostname(config)# access-list alert-interval secs
 

seconds は 1 ~ 3600 で指定します。デフォルトは 300 です。