PDF

ASA/PIX:ICMP PING と traceroute の処理
目次
概要
前提条件
要件
使用するコンポーネント
表記法
ネットワーク ダイアグラム
PIX を介した ping の送信
PIX/ASA ソフトウェア バージョン 7.x
PIX ソフトウェア バージョン 5.0.1 6.3.3
PIX ソフトウェア バージョン 4.2(2) 5.0.1
PIX ソフトウェア バージョン 4.1(6) 4.2(2)
PIX 自身のインターフェイスへの ping の送信
PIX を介して着信する traceroute コマンド
ASA/PIX での traceroute でファイアウォールが表示されるようにする方法
例
エラー メッセージ:313005
ICMP メッセージ タイプ(RFC 792)
サービス リクエストをオープンする場合に収集しておく情報
関連情報
概要
PIX Firewall に対して行われる Internet Control Message Protocol(ICMP; インターネット制御メッセージ プロトコル)によ
る ping と traceroute は、PIX および ASA のコードのバージョンによって異なる方法で処理されます。
デフォルトでは、PIX/ASA を経由する着信 ICMP は拒否されます。発信 ICMP は許可されますが、着信応答はデフォルトでは拒否
されます。
注:このドキュメントの「ASA/PIX での traceroute でファイアウォールが表示されるようにする方法」セクションの情報は
ASA バージョン 8.0(3) 以降に適用されます。8.0(3) よりも前のバージョンは、不具合 CSCsk76401(登録ユーザ専用)があるた
め、このセクションで説明している設定はサポートしません。
Return to Top
前提条件
要件
このドキュメントに関する特別な要件はありません。
Return to Top
使用するコンポーネント
このドキュメントの情報は、次のソフトウェアとハードウェアのバージョンに基づくものです。
PIX ソフトウェア バージョン 4.1(6) 以降
ICMP ping 用に 7.x 以降のバージョンを稼動する Cisco ASA 5500 シリーズ セキュリティ アプライアンス
ASA で traceroute 用に 8.0(3) 以降のバージョンを稼動する Cisco ASA 5500 シリーズ セキュリティ アプライアンス
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されたものです。このドキュメントで使用するすべて
のデバイスは、クリアな(デフォルト)設定で作業を開始しています。対象のネットワークが実稼動中である場合には、どのよう
な作業についても、その潜在的な影響について確実に理解しておく必要があります。
Return to Top
表記法
ドキュメント表記の詳細は、『シスコ テクニカル ティップスの表記法』を参照してください。
Return to Top
ネットワーク ダイアグラム
注:この設定で使用している IP アドレス スキームは、インターネット上で正式にルーティング可能なものではありません。こ
れらはラボ環境で使用された RFC 1918 でのアドレスです。
Return to Top
PIX を介した ping の送信
PIX/ASA ソフトウェア バージョン 7.x
着信 ping
Outside または PIX の別の低セキュリティ インターフェイスから発信された ping は、デフォルトでは拒否されます。ping
は、スタティック リストとアクセス リストまたはアクセス リストのみを使用して許可できます。次の例では、PIX の Inside
にあるサーバを、外部の ping に対してアクセス可能にします。Inside のアドレス(10.1.1.5)と Outside のアドレス
(192.168.1.5)の間に、スタティック変換を作成します。
pix(config)#static (inside,outside) 192.168.1.5 10.1.1.5 netmask 255.255.255.255
pix(config)#access-list 101 permit icmp any host 192.168.1.5 echo
pix(config)#access-group 101 in interface outside
発信 ping
PIX 7.x には、Inside のユーザから Outside のホストへの ping を可能にするオプションが 2 つあります。第 1 のオプション
は、エコー メッセージのタイプごとに特定のルールを設定することです。
たとえば、次のように入力します。
access-list 101 permit icmp any any echo-reply
access-list 101 permit icmp any any source-quench
access-list 101 permit icmp any any unreachable
access-list 101 permit icmp any any time-exceeded
access-group 101 in interface outside
これにより、Inside のユーザが Outside のホストに ping する際に、ファイアウォールでこれらのリターン メッセージだけが
許可されます。他のタイプの ICMP ステータス メッセージは阻止対象とされ、ファイアウォールでは、他のすべての ICMP メッ
セージがブロックされます。
もう 1 つのオプションは、ICMP インスペクションを設定することです。これにより、信頼できる IP アドレスのファイアウォー
ル通過が許可され、信頼できるアドレスへの応答だけが許可されます。これにより、すべての Inside インターフェイスのホスト
は Outside のホストに対して ping を実行できるようになり、ファイアウォールは応答を返せるようになります。さらに、ファ
イアウォールを通過する ICMP トラフィックを監視できるという利点があります。次の例では、icmp inspection をデフォルトの
グローバル検査ポリシーに追加しています。
たとえば、次のように入力します。
policy-map global_policy
class inspection_default
inspect icmp
他のインターフェイスへの ping
management-access コマンドは、ユーザがフル トンネル IPSec VPN や SSL VPN クライアント(AnyConnect 2.x クライアント、
SVC 1.x)を使用して、またはサイト間 IPSec トンネル経由で PIX/ASA に接続されたときにだけ、Outside から managementaccess インターフェイスへのユーザの接続を許可します。
グローバル コンフィギュレーション モードで management-access が設定されていない限り、PIX の Inside インターフェイス
には Outside からアクセスできず、Outside インターフェイスには Inside からアクセスできません。management-access をイ
ネーブルにしたとしても、目的のホストに対して Telnet、SSH、または HTTP アクセスを設定する必要があります。
pix(config)#management-access inside
pix(config)#show running-config management-access
management-access inside
Return to Top
PIX ソフトウェア バージョン 5.0.1 6.3.3
デフォルトでは、PIX を経由する着信 ICMP は拒否されます。発信 ICMP は許可されますが、着信応答はデフォルトでは拒否され
ます。
注:バージョン 6.3.3 は、このドキュメントの改訂時点で使用可能な最新バージョンのコードです。以降のバージョンでの変更
については、リリース ノートを参照してください。
着信 ping
着信 ICMP は、PIX でどちらを使用しているかによって、conduit 文または access-list 文で許可できます。conduit と
access-list を併用しないでください。
次の例では、すべての Outside のデバイスによって Inside のデバイス 10.1.1.5(スタティックで 192.168.1.5 が割り当てら
れている)の ICMP が許可されるようにする方法を示しています。
static (inside,outside) 192.168.1.5 10.1.1.5 netmask 255.255.255.255 0 0
!--- および次のいずれか
conduit permit icmp 192.168.1.5 255.255.255.255 0.0.0.0 0.0.0.0 echo
!--- または
access-list 101 permit icmp any host 192.168.1.5 echo
access-group 101 in interface outside
発信 ping
発信 ICMP に対する応答は、PIX でどちらを使用しているかによって、conduit 文または access-list 文で許可できます。
conduit と access-list を併用しないでください。
次の例では、Inside のデバイス 10.1.1.5(スタティックで 192.168.1.5 が割り当てられている)が開始した ICMP 要求に対す
る応答を、すべての Outside のデバイスから許可する方法を示しています。
static (inside,outside) 192.168.1.5 10.1.1.5 netmask 255.255.255.255 0 0
!--- および次のいずれか
conduit
conduit
conduit
conduit
permit
permit
permit
permit
icmp
icmp
icmp
icmp
192.168.1.5
192.168.1.5
192.168.1.5
192.168.1.5
255.255.255.255
255.255.255.255
255.255.255.255
255.255.255.255
0.0.0.0
0.0.0.0
0.0.0.0
0.0.0.0
0.0.0.0
0.0.0.0
0.0.0.0
0.0.0.0
echo-reply
source-quench
unreachable
time-exceeded
!--- または
access-list 101 permit icmp any host 192.168.1.5
access-list 101 permit icmp any host 192.168.1.5
access-list 101 permit icmp any host 192.168.1.5
access-list 101 permit icmp any host 192.168.1.5
access-group 101 in interface outside
echo-reply
source-quench
unreachable
time-exceeded
Return to Top
PIX ソフトウェア バージョン 4.2(2) 5.0.1
デフォルトでは、PIX を経由する着信 ICMP は拒否されます。発信 ICMP は許可されますが、着信応答はデフォルトでは拒否され
ます。
着信 ping
着信 ICMP は conduit 文で許可できます。
次の例では、すべての Outside のデバイスによって Inside のデバイス 10.1.1.5(スタティックで 192.168.1.5 が割り当てら
れている)の ICMP が許可されるようにする方法を示しています。
static (inside,outside) 192.168.1.5 10.1.1.5 netmask 255.255.255.255 0 0
conduit permit icmp 192.168.1.5 255.255.255.255 0.0.0.0 0.0.0.0 echo
発信 ping
発信 ICMP への応答は conduit 文で許可できます。
次の例では、Inside のデバイス 10.1.1.5(スタティックで 192.168.1.5 が割り当てられている)が開始した ICMP 要求に対す
る応答を、すべての Outside のデバイスから許可する方法を示しています。
static (inside,outside) 192.168.1.5 10.1.1.5 netmask 255.255.255.255 0 0
conduit permit icmp 192.168.1.5 255.255.255.255 0.0.0.0 0.0.0.0 echo-reply
conduit permit icmp 192.168.1.5 255.255.255.255 0.0.0.0 0.0.0.0 source-quench
conduit permit icmp 192.168.1.5 255.255.255.255 0.0.0.0 0.0.0.0 unreachable
conduit permit icmp 192.168.1.5 255.255.255.255 0.0.0.0 0.0.0.0 time-exceeded
Return to Top
PIX ソフトウェア バージョン 4.1(6) 4.2(2)
デフォルトでは、PIX を経由する着信 ICMP は拒否されます。発信 ICMP はデフォルトで許可されます。
着信 ping
着信 ICMP は conduit 文で許可できます。
次の例では、すべての Outside のデバイスによって Inside のデバイス 10.1.1.5(スタティックで 192.168.1.5 が割り当てら
れている)の ICMP が許可されるようにする方法を示しています。
static (inside), outside) 192.168.1.5 10.1.1.5
conduit 192.168.1.5 8 icmp 0.0.0.0 0.0.0.0
!--- 8 はエコー要求用です。これらは RFC 792 に基づいています。
詳細は、このドキュメントの「ICMP メッセージ タイプ(RFC 792)」を参照してください。
発信 ping
デフォルトで、発信 ICMP および応答は許可されます。
Return to Top
PIX 自身のインターフェイスへの ping の送信
PIX ソフトウェア バージョン 4.1(6) 5.2.1 では、PIX 自身のインターフェイスに対する ICMP トラフィックは許可されます。応
答しないように PIX を設定することはできません。どのバージョンでも、PIX の向こう側のインターフェイスに ping すること
はできません。このドキュメントのネットワーク ダイアグラムを基にすると、次のようになります。
10.1.1.5 から 10.1.1.1 に対しては ping できません。
Outside から 192.168.1.1 に対しては ping できません。
10.1.1.5 から 192.168.1.1 に対しては ping できません。
Outside から 10.1.1.1 に対しては ping できません。
PIX ソフトウェア バージョン 5.2.1 では、ICMP はデフォルトで許可されますが、自身のインターフェイスからの PIX ping 応
答は、icmp コマンドでディセーブルにできます(つまり「ステルス PIX」になります)。
icmp permit|deny [host] src_addr [src_mask] [type] int_name
次の例では、PIX はエコー要求に対してエコー応答を送信できません。
icmp deny any echo outside
access-list と同様に、permit 文が存在しない場合、その他のすべての ICMP トラフィックも暗黙的に拒否されます。
このコマンドは、PIX の Outside の隣接ネットワークからの ping を許可します。
icmp permit 192.168.1.0 255.255.255.0 echo outside
access-list と同様に、permit 文が存在しない場合、その他のすべての ICMP トラフィックも暗黙的に拒否されます。
Return to Top
PIX を介して着信する traceroute コマンド
問題:PIX Firewall により、着信 traceroute の出力ですべての内部ネットワークが隠蔽される。
解決策:
PIX は traceroute コマンドをサポートしていません。traceroute が Outside から発行された場合、PIX は、自分のインターフ
ェイスの IP アドレスだけでなく、Inside ネットワークの IP アドレスも表示しません。宛先アドレスが、内部ホップごとに繰
り返し表示されます。
traceroute は、スタティック Network Address Translation(NAT; ネットワーク アドレス変換)でのみ動作し、Port Address
Translation(PAT; ポート アドレス変換)の IP アドレスでは動作しません。たとえば、インターネット上のクライアント(ア
ドレス 209.165.202.130)が、PIX の Inside にある Web サーバ(パブリック アドレス 209.165.201.25、プライベート アドレ
ス 10.1.3.25)に対して traceroute を実行するものとします。PIX と内部 Web サーバの間には 2 つのルートがあります。クラ
イアント マシンでの traceroute の出力は次のようになります。
Target IP address: 209.165.201.25 Source address: 209.165.202.130
Tracing the route to 209.165.201.25
1 209.165.202.128 4 msec 3 msec 4 msec
2 209.165.201.25 3 msec 5 msec 0 msec
3 209.165.201.25 4 msec 6 msec 3 msec
4 209.165.201.25 3 msec 2 msec 2 msec
PIX バージョン 6.3 以降では、fixup protocol icmp エラー コマンドを発行することで、この動作を元に戻すことができます。
この機能をイネーブルにすると、PIX は、スタティック NAT の設定に基づいて、Internet Control Message Protocol(ICMP; イ
ンターネット制御メッセージ プロトコル)のエラー メッセージを送信する中間ホップに対する xlate を作成します。PIX は、
変換された IP アドレスでパケットを上書きします。
NAT を PIX 7.0 でイネーブルにすると、PIX インターフェイスの IP アドレスおよび中間ホップの実際の IP アドレスを見るこ
とはできません。ただし、PIX 7.0 では NAT は必須ではなく、no nat-control コマンドを使用してディセーブルにできます。
NAT ルールを削除した場合、実際の IP アドレスがルーティング可能なものである場合は見ることができます。
PIX/ASA を設定して、Outside ネットワークから内部のネットワークを表示するには、次のようにします。
ciscoasa#config t
ciscoasa(config)#access-list internal-out permit icmp any any echo-reply
ciscoasa(config)#access-list internal-out permit icmp any any time-exceeded
ciscoasa(config)#access-list internal-out permit icmp any any unreachable
ciscoasa(config)#policy-map global_policy
ciscoasa(config-pmap)#class inspection_default
ciscoasa(config-pmap-c)#
inspect icmp
ciscoasa(config-pmap-c)#
inspect icmp error
ciscoasa(config-pmap-c)#end
ciscoasa(config)#service-policy global_policy global
ciscoasa(config)#access-group internal-out in interface outside
詳細は、『PIX および traceroute コマンド』の「PIX によるインバウンド トレースルート コマンド」セクションを参照してく
ださい。
Return to Top
ASA/PIX での traceroute でファイアウォールが表示されるようにする方法
ciscoasa(config)#class-map class-default
ciscoasa(config)#match any
!--- この class-map はデフォルトで存在します。
ciscoasa(config)#policy-map global_policy
!--- この policy-map はデフォルトで存在します。
ciscoasa(config-pmap)#class class-default
!--- このポリシーに別の class-map を追加します。
ciscoasa(config-pmap-c)#set connection decrement-ttl
!--- ファイアウォールを通過するパケットの IP TTL フィールドの値を減分します。
!--- デフォルトでは、この TTL はファイアウォールを(多少なりとも)隠蔽する減分にはなっていません。
ciscoasa(config-pmap-c)#exit
ciscoasa(config-pmap)#exit
ciscoasa(config)#service-policy global_policy global
!--- この service-policy はデフォルトで存在します。
WARNING: Policy map global_policy is already configured as a service policy
ciscoasa(config)#icmp unreachable rate-limit 10 burst-size 5
!--- ICMP unreachable 応答を調整します。
!--- デフォルトは、rate-limit が 1、burst-size が 1 です。
!--- デフォルトのままでは、ASA ホップがタイムアウトします。
ciscoasa(config)#access-list outside-in-acl remark Allow ICMP Type 11 for Windows tracert
ciscoasa(config)#access-list outside-in-acl extended permit icmp any any time-exceeded
!--- access-list は、ICMP トラフィックの反対側に対するものです(この場合は
!---Outside インターフェイスで、ICMP タイプ 11 応答の time-exceeded を許可するには、
!--- 変更する必要があります)。
ciscoasa(config)#access-group outside-in-acl in interface outside
!--- access-list を Outside インターフェイスに適用します。
ciscoasa(config)#
Return to Top
例
トポロジ
注:この設定で使用している IP アドレス スキームは、インターネット上で正式にルーティング可能なものではありません。こ
れらは RFC 1918 でのアドレスであり、ラボ環境で使用されたものです。
ポリシーの変更を適用する前:
C:\>tracert -d www.yahoo.com.
Tracing route to www.yahoo-ht3.akadns.net [192.168.93.52]
over a maximum of 30 hops:
1
1 ms
<1 ms
<1 ms
172.16.2.1
!--- 最初に表示されるホップは Router 1
2
6 ms
(etc...)
6 ms
5 ms
192.168.100.101
ポリシーの変更を適用した後:
C:\>tracert -d www.yahoo.com.
Tracing route to www.yahoo-ht3.akadns.net [192.168.93.52]
over a maximum of 30 hops:
1
<1 ms
<1 ms
<1 ms
172.16.2.254
!--- 最初に表示されるホップは ASA
2
<1 ms
<1 ms
<1 ms
172.16.2.1
!--- Router 1 は 2 番目のホップ
3
6 ms
(etc...)
6 ms
6 ms
192.168.100.101
Return to Top
エラー メッセージ:313005
エラー メッセージ
%PIX|ASA-4-313005: No matching connection for ICMP error message:
icmp_msg_info on interface_name interface. Original IP payload:
embedded_frame_info icmp_msg_info = icmp src src_interface_name:src_address dst
dest_interface_name:dest_address (type icmp_type, code icmp_code)
embedded_frame_info = prot src source_address/source_port dst
dest_address/dest_port
説明
ICMP エラー メッセージはセキュリティ アプライアンスですでに確立されているどのセッションとも関係がないので、ICMP エラ
ー パケットはセキュリティ アプライアンスによって廃棄されます。
推奨処置
原因が攻撃である場合は、ACL を使用してそのホストを拒否できます。
Return to Top
ICMP メッセージ タイプ(RFC 792)
メッセージ番号
メッセージ
0
Echo Reply
3
Destination Unreachable
4
Source Quench
5
Redirect
8
Echo
11
Time Exceeded
12
Parameter Problem
13
Timestamp
14
Timestamp Reply
15
Information Request
16
Information Reply
Return to Top
サービス リクエストをオープンする場合に収集しておく情報
ここまで説明したトラブルシューティングの手順を実行しても、なおサポー
トが必要で、Cisco TAC でサービス リクエストをオープンする場合には、
ご使用の PIX Firewall のトラブルシューティングに必要な次の情報をご提
供ください。
問題の説明と関連するトポロジの詳細
サービス リクエストをオープンする前に実行したトラブルシューティ
ング
show tech-support コマンドの出力
logging buffered debugging コマンド実行後の show log コマンドの
出力、あるいは、問題を示す画面キャプチャ(採取されている場合)
収集したデータは、圧縮しないプレーン テキスト形式(.txt)でサービス
リクエストに添付してください。情報をサービス リクエストに添付するに
は、Service Request Tool(登録ユーザ専用)を使用してアップロードしま
す。Service Request Tool にアクセスできない場合は、電子メールへの添
付で、[email protected] に情報を送信できます。この場合は、メッセージ
の件名(Subject)行にサービス リクエスト番号を記入してください。
Return to Top
関連情報
RFC 792
PIX Firewall に関するドキュメント(英語)
PIX コマンド リファレンス
PIX に関するサポート ページ(英語)
Requests for Comments(RFC)
テクニカルサポートとドキュメント:シスコシステムズ
Return to Top
1992 - 2014 Cisco Systems, Inc. All rights reserved.
Updated: 2010 年 8 月 3 日
http://www.cisco.com/cisco/web/support/JP/102/1021/1021191_31-j.html
Document ID: 15246