多数の内部エンドポイントからのトラフィックがあり、エンドポイントからインターネット上のホストに RST または FIN/ACK が送信されています。これらの接続は、適切に処理されていない透過プロキシに関連しています。透過プロキシは、これらの接続を処理する代わりに、単に ASA に転送します。ASA は、これまでこれらの接続を観察したことがありません。
ASA (8.2) はこのトラフィックを確認し、106015 イベント (接続なし) を生成してトラフィックを拒否します。これはまさに私が期待していたことです。ただし、ASA はトラフィックが許可されていることを示す 106100 イベントもログに記録します。"permit ip any any log" と示す ACE があります。
トラフィックキャプチャに基づいて、トラフィックが拒否され、許可されなかったことが確認されました。
では、なぜ 106100 イベントが発生しているのでしょうか。ASA がトラフィックを許可したように見えますが、実際には許可していないため、完全に混乱しています。ASA が既存の接続がないためにトラフィックをドロップする場合、なぜ ACL に近づいたり、許可ログを生成したりするのでしょうか。
質問のログは次のとおりです。
: %ASA-6-106015: Deny TCP (no connection) from 10.x.x.x/62938 to 216.x.x.x/80 flags FIN ACK on interface inside
: %ASA-6-106100: access-list inside permitted tcp inside/10.x.x.x(62938) -> outside/216.x.x.x(80) hit-cnt 1 first hit [0x62c4905, 0x0]
2 つのイベントのタイムスタンプは同一です。
アドバイスをいただければ幸いです。よろしくお願いします。
編集:
パケット フローに関するこの Cisco の記事による説明。
http://www.cisco.com/c/en/us/support/docs/security/asa-5500-x-series-next-generation-firewalls/113396-asa-packet-flow-00.html
「パケット フローが既存の接続と一致しない場合は、TCP 状態が検証されます。SYN パケットまたは UDP パケットの場合は、接続カウンタが 1 増加し、パケットが ACL チェックのために送信されます。SYN パケットでない場合は、パケットがドロップされ、イベントがログに記録されます。」
説明した動作に基づいて、トラフィックが許可されていることを示す 106100 ログが表示される理由がまだわかりません。
答え1
ACL は、接続追跡と NAT 評価の前に評価されます (packet-tracer
このトラフィックのシミュレーションの出力を確認してください)。トラフィックはそのルールに該当するため、 で指示したとおりにログに記録されますpermit ip any any log
。
答え2
これは予想される動作です:
アクセス リスト行に log 引数がある場合、非同期パケットが ASA に到達し、アクセス リストによって評価されるために、このメッセージ ID がトリガーされる可能性があります。たとえば、ASA で ACK パケットが受信された場合 (接続テーブルに TCP 接続が存在しない)、ASA はパケットが許可されたことを示すメッセージ 106100 を生成する可能性がありますが、一致する接続がないため、パケットは後で正しくドロップされます。