| ライター翻訳版 - September 26, 2008 |
| 機械翻訳版 - April 28, 2009 |
| 英語版 - April 28, 2009 |
| Document ID: 81824 |
目次
概要前提条件
要件
使用するコンポーネント
表記法
問題:IPsec VPN コンフィギュレーションが機能しない
ソリューション
NAT トラバーサルをイネーブルにする(#1 RA VPN の問題)
接続が正しいことをテストする
ISAKMP をイネーブルにする
PFS をイネーブル/ディセーブルにする
古いまたは既存のセキュリティ アソシエーション(トンネル)をクリアする
ISAKMP ライフタイムを確認する
ISAKMP キープアライブをイネーブルまたはディセーブルにする
事前共有鍵を再入力するか元に戻す
クリプト マップを削除してから再適用する
sysopt コマンドがあることを確認する(PIX/ASA のみ)
ISAKMP 識別情報を確認する
アイドル/セッション タイムアウトを確認する
ACL が正しいことを確認する
ISAKMP ポリシーを確認する
ルーティングが正しいことを確認する
トランスフォーム セットが正しいことを確認する
クリプト マップのシーケンス番号と名前を確認する
ピア IP アドレスが正しいことを確認する
L2L ピアについて XAUTH をディセーブルにする
問題:VPN クライアントが ASA/PIX で接続できない
ソリューション
問題:リモート アクセスと EZVPN のユーザが VPN に接続するがリソースにいっさいアクセスできない
ソリューション
DMZ にあるサーバにアクセスできない
VPN クライアントが DNS を解決できない
スプリット トンネル:インターネットや除外されたネットワークにアクセスできない
ヘアピニング
ローカル LAN へのアクセス
プライベート ネットワークのオーバーラップ
問題:3 人を超える VPN クライアント ユーザに接続できない
ソリューション
同時ログインを設定する
CLI による ASA/PIX の設定
コンセントレータを設定する
問題:トンネルが確立されるとセッションやアプリケーションを開始できず転送が遅くなる
ソリューション
Cisco IOS ルータ
PIX/ASA 7.X
問題:ASA/PIX から VPN トンネルを開始できない
ソリューション
その他
問題
問題:警告:クリプト マップ エントリが不完全になる
show crypto isakmp sa コマンドと debug コマンドの出力に AG_INIT_EXCH メッセージが表示される
デバッグ メッセージ「Received an IPC message during invalid state」が表示される
NetPro ディスカッション フォーラム:特集対話
関連情報
概要
このドキュメントでは、IPSec VPN に関する問題の最も一般的なソリューションについて説明しています。これらのソリューションは、Cisco のテクニカルサポートで解決されたサービス リクエストから直接導出されたものです。これらのソリューションの多くは、IPSec VPN 接続について徹底的なトラブルシューティングを行う前に適用できます。その結果、このドキュメントは、接続のトラブルシューティングを開始して Cisco テクニカルサポートに問い合せをする前に試す、共通手順のチェックリストとして提供されています。
サイト間 VPN とリモート アクセス VPN のためのコンフィギュレーション例のドキュメントが必要な場合は、『コンフィギュレーションの例とテクニカルノート』の「リモート アクセス VPN、PIX によるサイト間 VPN(L2L)、IOS によるサイト間 VPN(L2L)」セクションと「VPN3000 によるサイト間 VPN(L2L)」セクションを参照してください。
注:このドキュメントに記載している設定例はルータやセキュリティ アプライアンスで使用するものですが、ほとんどすべての概念は VPN 3000 コンセントレータにも応用できます。
注:Cisco IOS(R) ソフトウェアと PIX の両方で IPSec のトラブルシューティングに使用される一般的な debug コマンドの説明は、『IP Security のトラブルシューティング:debug コマンドの説明と使用』を参照してください。
注:このドキュメントで使用されているコマンドの詳細を調べるには、Command Lookup Tool(登録ユーザ専用)を使用してください。
一部ツールについては、ゲスト登録のお客様にはアクセスできない場合がありますことを、ご了承ください。
警告:このドキュメントで説明しているソリューションの多くは、適用時に、そのデバイスでのすべての IPSec VPN 接続が一時的に失われる可能性があります。これらのソリューションは、十分に注意して、組織の変更管理ポリシーに従って適用することを推奨いたします。
前提条件
要件
次の項目に関する知識があることを推奨します。
-
次の Cisco デバイスでの IPSec VPN 設定
-
Cisco PIX 500 シリーズ セキュリティ アプライアンス
-
Cisco ASA 5500 シリーズ セキュリティ アプライアンス
-
Cisco IOS(R) ルータ
-
Cisco VPN 3000 シリーズ Concentrator(オプション)
-
使用するコンポーネント
このドキュメントの情報は、次のソフトウェアとハードウェアのバージョンに基づくものです。
-
Cisco ASA 5500 シリーズ セキュリティ アプライアンス
-
Cisco PIX 500 シリーズ セキュリティ アプライアンス
-
Cisco IOS
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されたものです。このドキュメントで使用するすべてのデバイスは、クリアな(デフォルト)設定で作業を開始しています。対象のネットワークが実稼働中である場合には、どのような作業についても、その潜在的な影響について確実に理解しておく必要があります。
表記法
ドキュメント表記の詳細は、『シスコ テクニカル ティップスの表記法』を参照してください。
問題:IPsec VPN コンフィギュレーションが機能しない
最近設定または設定を変更した IPSec VPN ソリューションが機能しない。
現在の IPSec VPN の設定が機能しなくなった。
ソリューション
このセクションでは、IPSec VPN に関する問題の最も一般的なソリューションについて説明しています。特定の順番にはなっていませんが、これらのソリューションは、詳細なトラブルシューティングや TAC への連絡を行う前に試すチェックリスト項目として使用できます。これらのソリューションはすべて TAC サービス リクエストから直接引用したものであり、多数のお客様の問題を解決した実績があります。
注:これらのセクションで表記するコマンドの中には、スペースの関係上 2 行にわたって表記されているものがあります。
NAT トラバーサルをイネーブルにする(#1 RA VPN の問題)
NAT トラバーサル(NAT-T)を使用すると、Linksys SOHO ルータなどの NAT デバイスや PAT デバイス上を VPN トラフィックが通過できるようになります。NAT-T をイネーブルにしていないと、VPN クライアント ユーザから PIX または ASA に問題なくアクセスできているように見えていながら、セキュリティ アプライアンスの背後にある社内ネットワークにはアクセスできないという事態が頻繁に生じます。
NAT/PAT デバイスで NAT-T をイネーブルにしていないと、PIX/ASA で regular translation creation failed for protocol 50 src inside:10.0.1.26 dst outside:10.9.69.4 エラー メッセージを受け取る場合があります。
同様に、同じ IP アドレスからの同時ログインができない場合、Secure VPN connection terminated locally by client. Reason 412: The remote peer is no longer responding. エラー メッセージが表示されます。このエラーを解決するには、VPN デバイスのヘッドエンドで NAT-T をイネーブルにします。
注:Cisco IOS ソフトウェア リリース 12.2(13)T 以降では、Cisco IOS で NAT-T はデフォルトでイネーブルになっています。
Cisco セキュリティ アプライアンスで NAT-T をイネーブルにするコマンドを次に示します。この例では、キープアライブ時間を 20 に設定しています(デフォルト)。
PIX/ASA 7.1 以前
pix(config)#isakmp nat-traversal 20
PIX/ASA 7.2(1) 以降
securityappliance(config)#crypto isakmp nat-traversal 20
これが機能するには、クライアントでも修正が必要です。
Cisco VPN Client で、Connection Entries を選択して、Modify をクリックします。これにより新しいウィンドウが表示されますが、ここで Transport タブを選択する必要があります。このタブで、Enable Transparent Tunneling と IPSec over UDP ( NAT / PAT ) のオプション ボタンを選択します。次に、Save をクリックして、接続をテストします。
注:このコマンドは、PIX 6.x と PIX/ASA 7.x で共通です。
注:PIX/ASA は NAT デバイスとして動作するため、ACL の設定により、NAT-T 用 UDP 4500、UDP 500 および ESP ポートを許可することが重要です。PIX/ASA での ACL の設定についての詳細は、『NAT を使用したファイアウォール経由の IPSec トンネルの設定』を参照してください。
VPN コンセントレータ
VPN コンセントレータで NAT-T をイネーブルにするには、Configuration > Tunneling and Security >IPSEC >NAT Transparency > Enable: IPsec over NAT-T の順に選択します。
注:NAT-T では、複数の VPN クライアントを PIX、ルータ、コンセントレータなどのあらゆるヘッドエンドに PAT デバイス経由で同時に接続することもできます。
接続が正しいことをテストする
VPN の接続は、暗号化を実行するエンドポイント デバイスの背後にあるデバイスからテストするのが理想的ですが、多くのユーザは暗号化を行うデバイスから ping コマンドを使用して VPN の接続をテストしています。通常 ping はこの目的で機能しますが、ping を正しいインターフェイスから発信することが重要です。ping の発信元が正しくないと、VPN 接続が実際には正しく動作しているときでも失敗したように見える場合があります。例として次のシナリオを参照してください。

Router A のクリプト ACL
access-list 110 permit ip 192.168.100.0 0.0.0.255 192.168.200.0 0.0.0.255
Router B のクリプト ACL
access-list 110 permit ip 192.168.200.0 0.0.0.255 192.168.100.0 0.0.0.255
この状況では、いずれかのルータの背後にある「Inside」ネットワークから ping を発信する必要があります。これは、クリプト ACL は、これらの送信元アドレスを持つトラフィックを暗号化するためだけに設定されているためです。ルータのインターネット側インターフェイスから発信された ping は暗号化されません。ルータの「内側の」インターフェイスから ping を発信するには、特権 EXEC モードで ping コマンドの拡張オプションを使用します。
routerA#ping Protocol [ip]: Target IP address: 192.168.200.10 Repeat count [5]: Datagram size [100]: Timeout in seconds [2]: Extended commands [n]: y Source address or interface: 192.168.100.1 Type of service [0]: Set DF bit in IP header? [no]: Validate reply data? [no]: Data pattern [0xABCD]: Loose, Strict, Record, Timestamp, Verbose[none]: Sweep range of sizes [n]: Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 192.168.200.1, timeout is 2 seconds: Packet sent with a source address of 192.168.100.1 !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 1/2/4 ms
この図にあるルータを PIX または ASA セキュリティ アプライアンスと交換したと想像してください。接続テスト用に使用する ping は、inside キーワードを付けて Inside インターフェイスから発信することもできます。
securityappliance#ping inside 192.168.200.10 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 192.168.200.10, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/1 ms
注:ping でセキュリティ アプライアンスの Inside インターフェイスを対象とすることは推奨いたしません。ping で Inside インターフェイスを対象とする必要がある場合は、そのインターフェイスで management-access をイネーブルにする必要があります。これを行っていないと、アプライアンスは応答を返しません。
securityappliance(config)#management-access inside
ISAKMP をイネーブルにする
IPSec VPN トンネルが動作しているという兆候がまったくない場合は、ISAKMP がイネーブルになっていないことが考えられます。デバイスで ISAKMP がイネーブルになっていることを確認してください。デバイスで ISAKMP をイネーブルにするには、次のコマンドのいずれかを使用します。
-
Cisco IOS
router(config)#crypto isakmp enable
-
Cisco PIX 7.1 以前(outside を任意のインターフェイスで置き換えます)
pix(config)#isakmp enable outside
-
Cisco PIX/ASA 7.2(1) 以降(outside を任意のインターフェイスで置き換えます)
securityappliance(config)#crypto isakmp enable outside
PFS をイネーブル/ディセーブルにする
IPSec のネゴシエーションでは、Perfect Forward Secrecy(PFS; 完全転送秘密)によって、それぞれの新しい暗号鍵が以前の鍵とは独立したものであることが保証されます。両方のトンネル ピアで PFS をイネーブルまたはディセーブルにします。そうでないと、PIX/ASA/IOS ルータで LAN-to-LAN(L2L)の IPSec トンネルが確立されません。
PIX/ASA:
PFS はデフォルトでディセーブルになっています。PFS をイネーブルにするには、グループ ポリシー設定モードで、enable キーワードを指定して pfs コマンドを使用します。PFS をディセーブルにするには、disable キーワードを指定します。
hostname(config-group-policy)#pfs {enable | disable}
実行コンフィギュレーションから PFS アトリビュートを削除するには、このコマンドの no 形式を入力します。グループ ポリシーでは PFS に関する値を他のグループ ポリシーから継承できます。値を継承しないようにするには、このコマンドの no 形式を使用します。
hostname(config-group-policy)#no pfs
IOS ルータ:
このクリプト マップのエントリに対して新しいセキュリティ アソシエーションが要求された場合に、IPSec で PFS を要求するように指定する、あるいは IPSec で新しいセキュリティ アソシエーションに対する要求を受け取ったときに PFS を要求するように指定するには、クリプト マップ設定モードで set pfs コマンドを使用します。IPSec で PFS を要求しないようにするには、このコマンドの no 形式を入力します。デフォルトでは、PFS は要求されません。このコマンドでグループを指定しない場合は、デフォルトで group1 が使用されます。
set pfs [group1 | group2] no set pfs
set pfs コマンドについて:
-
group1:新しいデフィーヘルマン交換が実行される際に、IPSec で 768 ビットのデフィーヘルマン プライム係数グループを使用する必要があることを指定します。
-
group2:新しいデフィーヘルマン交換が実行される際に、IPSec で 1024 ビットのデフィーヘルマン プライム係数グループを使用する必要があることを指定します。
例:
Router(config)#crypto map map 10 ipsec-isakmp Router(config-crypto-map)#set pfs group2
古いまたは既存のセキュリティ アソシエーション(トンネル)をクリアする
IOS ルータに次のエラー メッセージが表示される場合、SA がすでに期限切れになっているか、クリアされていることが問題です。リモート トンネルのエンド デバイスでは、自身が期限切れの SA を使用して(SA 設定パケット以外の)パケットを送信していることがわかりません。新しい SA が確立されたら通信が再開されます。これにより、トンネルを対象トラフィックが流れ始め、新しい SA が作成されて、トンネルが再確立されます。
%CRYPTO-4-IKMP_NO_SA: IKE message from x.x.x.x has no SA
IPSec VPN の問題を解決するのに最もシンプルであり、多くの場合に最適となるソリューションは、ISKAMP(フェーズ I)と IPSec(フェーズ II)の security association(SA; セキュリティ アソシエーション)をクリアすることです。
SA をクリアすれば、さまざまなエラー メッセージや不審な動作をトラブルシューティングすることなく高い頻度で解決できます。このテクニックはあらゆる状況で容易に使用できます。また、現在の IPSec VPN の設定を変更したり、内容を追加したりした後には、ほとんどの場合 SA をクリアする必要があります。さらに、特定のセキュリティ アソシエーションだけをクリアすることができますが、デバイス上の SA 全体をクリアする方が大きなメリットがあります。
注:セキュリティ アソシエーションをクリアしたら、トンネルにトラフィックを送信して、セキュリティ アソシエーションを再確立する必要があります。
警告:クリアするセキュリティ アソシエーションを指定しない場合、ここに一覧するコマンドはデバイス上のすべてのセキュリティ アソシエーションをクリアします。他の IPSec VPN トンネルを使用している場合は、操作に注意してください。
-
クリアする前に、対象とするセキュリティ アソシエーションを確認します。
-
Cisco IOS
router#show crypto isakmp sa router#show crypto ipsec sa
-
Cisco PIX/ASA セキュリティ アプライアンス
securityappliance#show crypto isakmp sa securityappliance#show crypto ipsec sa
注:これらのコマンドは、PIX 6.x と PIX/ASA 7.x で共通です。
-
-
セキュリティ アソシエーションをクリアします。各コマンドは太字で示した部分のみで入力するか、もしくはさらにオプションを付けて入力することができます。
-
Cisco IOS
-
ISAKMP(フェーズ I)
router#clear crypto isakmp ? <0 - 32766> connection id of SA <cr>
-
IPSec(フェーズ II)
router#clear crypto sa ? counters Reset the SA counters map Clear all SAs for a given crypto map peer Clear all SAs for a given crypto peer spi Clear SA by SPI <cr>
-
-
Cisco PIX/ASA セキュリティ アプライアンス
-
ISAKMP(フェーズ I)
securityappliance#clear crypto isakmp sa
-
IPSec(フェーズ II)
security appliance#clear crypto ipsec sa ? counters Clear IPsec SA counters entry Clear IPsec SAs by entry map Clear IPsec SAs by map peer Clear IPsec SA by peer <cr>
-
-
ISAKMP ライフタイムを確認する
L2L トンネルを使用しているときに通信が頻繁に切断される場合は、ISAKMP SA に設定されているライフタイムが短いことが問題である可能性があります。ISAKMP ライフタイムに何らかの不一致が発生すると、%PIX-5-713092: Group = x.x.x.x, IP = x.x.x.x, Failure during phase 1 rekeying attempt due to collision エラー メッセージを受け取る場合があります。これを修正するには、ピアどうしで同じ値を設定します。
デフォルトは 86,400 秒、つまり 24 時間です。一般的な規則として、ライフタイムが短いほど、ISAKMP ネゴシエーションが(ある程度までは)安全になるとされていますが、ライフタイムが短いと、セキュリティ アプライアンスが IPSec SA を作成する回数が多くなります。
一致したとの判断は、2 つのピアの両方のポリシーで同じ暗号、ハッシュ、認証、デフィーヘルマン パラメータ値が設定されている場合、および、リモート ピアのポリシーにおいて、比較するポリシーで指定されているライフタイムと同じかそれ以下のライフタイムが指定されている場合になされます。ライフタイムが同一でない場合、リモート ピアのポリシーにより、短い方のライフタイムが使用されます。一致の条件が満たされない場合、IKE はネゴシエーションを拒否し、IKE SA は確立されません。
SA のライフタイムを指定します。この例では、4 時間(14,400 秒)のライフタイムを設定しています。デフォルトは 86,400 秒、つまり 24 時間です。
PIX/ASA
hostname(config)#isakmp policy 2 lifetime 14400
IOS ルータ
R2(config)#crypto isakmp policy 10 R2(config-isakmp)#lifetime 86400
ISAKMP キープアライブをイネーブルまたはディセーブルにする
ISAKMP キープアライブを設定すると、LAN-to-LAN またはリモート アクセス VPN が散発的にドロップするのを防ぐのに役立ちます。これには、VPN クライアント、トンネル、非アクティブになった後にドロップされるトンネルが含まれます。この機能によって、トンネルのエンドポイントではリモート ピアが継続的に存在することが監視され、自身の存在がそのピアに報告されます。ピアからの応答がなくなると、エンドポイントは接続を解除します。ISAKMP キープアライブが動作するためには、両側の VPN エンドポイントでこの機能がサポートされている必要があります。
-
次のコマンドで、Cisco IOS に ISAKMP キープアライブを設定します。
router(config)#crypto isakmp keepalive 15
-
PIX/ASA セキュリティ アプライアンスで ISAKMP キープアライブを設定するには、次のコマンドを使用します。
-
Cisco PIX 6.x
pix(config)#isakmp keepalive 15
-
Cisco PIX/ASA 7.x 以降で、トンネル グループの名前が 10.165.205.222 の場合
securityappliance(config)#tunnel-group 10.165.205.222 ipsec-attributes securityappliance(config-tunnel-ipsec)#isakmp keepalive threshold 15 retry 10
状況によっては、問題解決のためにこの機能をディセーブルにする必要がある場合があります。たとえば、VPN クライアントが DPD パケットを阻止しているファイアウォールの背後にある場合などです。
Cisco PIX/ASA 7.x 以降で、トンネル グループの名前が 10.165.205.222 の場合
デフォルトではイネーブルになっている IKE キープアライブ処理をディセーブルにします。
securityappliance(config)#tunnel-group 10.165.205.222 ipsec-attributes securityappliance(config-tunnel-ipsec)#isakmp keepalive disable
-
事前共有鍵を再入力するか元に戻す
IPSec VPN トンネルが起動しないときには、単純な入力ミスが原因になっていることもよくあります。たとえば、セキュリティ アプライアンスでは、事前共有鍵は入力されると非表示になります。このため、キーが誤っていることがわかりません。各 VPN エンドポイントについて、事前共有鍵が正しく入力されていることを確認してください。キーが正しいことを確認するには、キーを再入力します。これは詳細なトラブルシューティングを避けるのに役立つ簡単な手段です。
リモート アクセス VPN では、CiscoVPN クライアントに有効なグループ名や事前共有鍵が入力されていることを確認します。このエラーは、グループ名や事前共有鍵が VPN クライアントとヘッドエンド デバイスとの間で一致しない場合に発生することがあります。
1 12:41:51.900 02/18/06 Sev=Warning/3 IKE/0xE3000056 The received HASH payload cannot be verified 2 12:41:51.900 02/18/06 Sev=Warning/2 IKE/0xE300007D Hash verification failed 3 14:37:50.562 10/05/06 Sev=Warning/2 IKE/0xE3000099 Failed to authenticate peer (Navigator:904) 4 14:37:50.593 10/05/06 Sev=Warning/2 IKE/0xE30000A5 Unexpected SW error occurred while processing Aggressive Mode negotiator:(Navigator:2202) 5 14:44:15.937 10/05/06 Sev=Warning/2 IKE/0xA3000067 Received Unexpected InitialContact Notify (PLMgrNotify:888) 6 14:44:36.578 10/05/06 Sev=Warning/3 IKE/0xE3000056 The received HASH payload cannot be verified 7 14:44:36.593 10/05/06 Sev=Warning/2 IKE/0xE300007D Hash verification failed... may be configured with invalid group password. 8 14:44:36.609 10/05/06 Sev=Warning/2 IKE/0xE3000099 Failed to authenticate peer (Navigator:904) 9 14:44:36.640 10/05/06 Sev=Warning/2 IKE/0xE30000A5 Unexpected SW error occurred while processing Aggressive Mode negotiator:(Navigator:2202)
PIX/ASA セキュリティ アプライアンスで設定を変更せずに事前共有鍵を元に戻すこともできます。『PIX/ASA 7.x:事前共有鍵回復』を参照してください。
警告:クリプト関連のコマンドを削除する際には、1 つあるいはすべての VPN トンネルがダウンしてしまう可能性があります。これらのコマンドは十分に注意して使用し、以降の手順を実行する前にお客様の組織の変更管理ポリシーを確認してください。
-
IOS でピア 10.0.0.1 またはグループ vpngroup に対する事前共有鍵 secretkey を削除および再入力するには、次のコマンドを使用します。
-
Cisco LAN-to-LAN VPN
router(config)#no crypto isakmp key secretkey address 10.0.0.1 router(config)#crypto isakmp key secretkey address 10.0.0.1
-
Cisco リモート アクセス VPN
router(config)#crypto isakmp client configuration group vpngroup router(config-isakmp-group)#no key secretkey router(config-isakmp-group)#key secretkey
-
-
PIX/ASA セキュリティ アプライアンスでピア 10.0.0.1 に対する事前共有鍵 secretkey を削除および再入力するには、次のコマンドを使用します。
-
Cisco PIX 6.x
pix(config)#no isakmp key secretkey address 10.0.0.1 pix(config)#isakmp key secretkey address 10.0.0.1
-
Cisco PIX/ASA 7.x 以降
securityappliance(config)#tunnel-group 10.0.0.1 ipsec-attributes securityappliance(config-tunnel-ipsec)#no pre-shared-key securityappliance(config-tunnel-ipsec)#pre-shared-key secretkey
-
クリプト マップを削除してから再適用する
セキュリティ アソシエーションをクリアしても、IPSec VPN の問題が解決されない場合、VPN トンネルの散発的な廃棄を含む広範囲な問題を解決するために、関連するクリプト マップを削除してから再適用します。
警告:インターフェースからクリプト マップを削除すると、そのクリプト マップに対応付けられているすべての IPSec トンネルが必ずダウンします。これらの手順は十分に注意して実行し、実行する前にお客様の組織の変更管理ポリシーを十分に考慮してください。
-
Cisco IOS でクリプト マップの削除と置き換えを行うには、下記のコマンドを使用します。
まず、インターフェイスからクリプト マップを削除します。crypto map コマンドの no 形式を使用します。
router(config-if)#no crypto map mymap
引き続き no 形式を使用してクリプト マップ全体を削除します。
router(config)#no crypto map mymap 10
ピア 10.0.0.1 の Ethernet0/0 インターフェイスのクリプト マップを置き換えます。次の例ではクリプト マップの必要最小限の設定を行っています。
router(config)#crypto map mymap 10 ipsec-isakmp router(config-crypto-map)#match address 101 router(config-crypto-map)#set transform-set mySET router(config-crypto-map)#set peer 10.0.0.1 router(config-crypto-map)#exit router(config)#interface ethernet0/0 router(config-if)#crypto map mymap
-
PIX や ASA では、次のコマンドを使用してクリプト マップの削除と置き換えを行います。
まず、インターフェイスからクリプト マップを削除します。crypto map コマンドの no 形式を使用します。
securityappliance(config)#no crypto map mymap interface outside
引き続き no 形式を使用して他のクリプト マップ コマンドを削除します。
securityappliance(config)#no crypto map mymap 10 match address 101 securityappliance(config)#no crypto map mymap set transform-set mySET securityappliance(config)#no crypto map mymap set peer 10.0.0.1
ピア 10.0.0.1 のクリプト マップを置き換えます。次の例ではクリプト マップの必要最小限の設定を行っています。
securityappliance(config)#crypto map mymap 10 ipsec-isakmp securityappliance(config)#crypto map mymap 10 match address 101 securityappliance(config)#crypto map mymap 10 set transform-set mySET securityappliance(config)#crypto map mymap 10 set peer 10.0.0.1 securityappliance(config)#crypto map mymap interface outside
注:クリプト マップの削除と再適用を行うと、ヘッドエンドの IP アドレスが変わった場合の接続の問題も解決されます。
sysopt コマンドがあることを確認する(PIX/ASA のみ)
sysopt connection permit-ipsec コマンドと sysopt connection permit-vpn コマンドを使用すると、IPSec トンネルからのパケットとそのペイロードに関して、セキュリティ アプライアンスのインターフェイス ACL をバイパスさせることができます。セキュリティ アプライアンスで終端される IPSec トンネルでは、これらのコマンドのどちらかがイネーブルになっていないと失敗する確立が高くなります。
セキュリティ アプライアンス ソフトウェア バージョン 7.0 以前では、この状況に関連する sysopt コマンドは sysopt connection permit-ipsec です。
セキュリティ アプライアンス ソフトウェア バージョン 7.1(1) 以降では、この状況に関連する sysopt コマンドは sysopt connection permit-vpn です。
PIX 6.x では、この機能はデフォルトでディセーブルになっています。PIX/ASA 7.0(1) 以降では、この機能はデフォルトでイネーブルになっています。使用しているデバイスで対応する sysopt コマンドがイネーブルであるかどうかを判定するには、次の show コマンドを使用します。
-
Cisco PIX 6.x
pix# show sysopt no sysopt connection timewait sysopt connection tcpmss 1380 sysopt connection tcpmss minimum 0 no sysopt nodnsalias inbound no sysopt nodnsalias outbound no sysopt radius ignore-secret no sysopt uauth allow-http-cache no sysopt connection permit-ipsec !--- sysopt connection permit-ipsec はディセーブルになっています no sysopt connection permit-pptp no sysopt connection permit-l2tp no sysopt ipsec pl-compatible
-
Cisco PIX/ASA 7.x
securityappliance# show running-config sysopt no sysopt connection timewait sysopt connection tcpmss 1380 sysopt connection tcpmss minimum 0 no sysopt nodnsalias inbound no sysopt nodnsalias outbound no sysopt radius ignore-secret sysopt connection permit-vpn !--- sysopt connection permit-vpn がイネーブルになっています。 !--- このデバイスでは 7.2(2) が稼働しています。
使用しているデバイスに適した sysopt コマンドをイネーブルにするには、次のコマンドを使用します。
-
Cisco PIX 6.x および PIX/ASA 7.0
pix(config)#sysopt connection permit-ipsec
-
Cisco PIX/ASA 7.1(1) 以降
securityappliance(config)#sysopt connection permit-vpn
注:sysopt connection コマンドを使用しない場合は、送信元から宛先への対象トラフィックである必要なトラフィックを Outside ACL で明示的に許可する必要があります。例としては、リモート デバイスの LAN からローカル デバイスの LAN へ、および、リモート デバイスの Outside インターフェイスからローカル デバイスの Outside インターフェイスへの「UDP port 500」があります。
ISAKMP 識別情報を確認する
IKE ネゴシエーションの中で IPSec VPN トンネルの確立に失敗した場合、その原因は PIX か、ピアがその相手ピアの識別情報を認識できなかったことが原因である可能性があります。2 つのピアで IPSec セキュリティ アプライアンスの確立に IKE を使用している場合は、各ピアがリモート ピアに対して自身の ISAKMP 識別情報を送信します。ピアは保持している ISAKMP 識別情報に応じて、自身の IP アドレスまたはホスト名を送信します。デフォルトでは、PIX ファイアウォール ユニットの ISAKMP 識別情報は IP アドレスに設定されています。一般的な規則としては、IKE ネゴシエーションの失敗を回避するために、セキュリティ アプライアンスとその相手ピアの識別情報を同じ方式で設定します。
ピアに送信されるようにフェーズ 2 ID を設定するには、グローバル コンフィギュレーション モードで isakmp identity コマンドを使用します。
crypto isakmp identity address !--- RA や L2L(サイト間)VPN トンネルが、 !--- 認証タイプに事前共有鍵で接続する場合、
または
crypto isakmp identity auto !--- RA や L2L(サイト間)VPN トンネルが、 !--- 接続タイプに ISAKMP ネゴシエーションで接続する場合、 !--- 事前共有鍵のための IP アドレスまたは証明書認証のための cert DN になります。
または
crypto isakmp identity hostname !--- ISAKMP の ID 情報を交換しているホストの !--- 完全修飾ドメイン名を使用します(デフォルト)。 !--- この名前はホスト名とドメイン名から構成されます。
注:ソフトウェア バージョン 7.2(1) からは、isakmp identity コマンドは使用されなくなっています。詳細は、『Cisco セキュリティ アプライアンス コマンド リファレンス、バージョン 7.2』を参照してください。
アイドル/セッション タイムアウトを確認する
アイドル タイムアウトが 30 分(デフォルト)に設定されている場合、これは 30 分間にわたってトンネルを通過するトラフィックがなかった場合にトンネルがドロップされることを意味します。VPN クライアントは、アイドル タイムアウトの設定にかかわらず 30 分後に接続解除され、PEER_DELETE-IKE_DELETE_UNSPECIFIED エラーが発生します。
トンネルが常時 up 状態で廃棄されることのないようにするには、idle timeout と session timeout を none に設定します。
PIX/ASA 7.x 以降
ユーザのタイムアウト期間を設定するには、次のように、グループポリシー コンフィギュレーション モードかユーザ名コンフィギュレーション モードで vpn-idle-timeout コマンドを入力します。
hostname(config)#group-policy DfltGrpPolicy attributes hostname(config-group-policy)#vpn-idle-timeout none
次のように、グループポリシー コンフィギュレーション モードかユーザ名コンフィギュレーション モードで vpn-session-timeout コマンドにより、VPN 接続に対する最大総時間を設定します。
hostname(config)#group-policy DfltGrpPolicy attributes hostname(config-group-policy)#vpn-session-timeout none
Cisco IOS ルータ
IPSec SA アイドル タイマーを設定するには、グローバル コンフィギュレーション モードかクリプト マップ設定モードで crypto ipsec security-association idle-time コマンドを使用します。デフォルトでは、IPSec SA アイドル タイマーはディセーブルになっています。
crypto ipsec security-association idle-time seconds
時間は秒単位で、このアイドル タイマーにより非アクティブなピアで SA が維持できます。引数 seconds の有効な値の範囲は 60 から 86400 です。
ACL が正しいことを確認する
通常の IPSec VPN 設定ではアクセス リストを 2 つ使用します。一方のアクセス リストは、VPN トンネルに宛てられたトラフィックを NAT プロセスから除外するために使用します。もう一方のアクセス リストでは、暗号化するトラフィックを定義します。これには、LAN-to-LAN 設定のクリプト ACL、またはリモートアクセス設定のスプリット トンネリング ACL が含まれます。これらの ACL が誤って設定されていたり、存在しなかったりすると、トラフィックが VPN トンネルを 1 方向にしか流れなかったり、トンネルにトラフィックがまったく送られなかったりします。
IPSec VPN の設定に必要なすべてのアクセス リストを設定していることと、それらのアクセス リストにトラフィックが正確に定義されていることを確認してください。このリストには、IPSec VPN の問題の原因が ACL にあることが疑われる場合に確認する単純な項目が含まれています。
-
NAT 免除 ACL とクリプト ACL でトラフィックが正しく指定されていることを確認します。
-
複数の VPN トンネルと複数のクリプト ACL がある場合は、それらの ACL が重複していないことを確認します。
-
ACL を 2 回使用しないようにします。NAT 免除 ACL とクリプト ACL で同じトラフィックが指定されている場合でも、それぞれの 2 つのアクセス リストを使用してください。
-
リモート アクセス コンフィギュレーションには、対象トラフィック用のダイナミック クリプト マップが備わったアクセス リストは使用しないでください。このようにしてしまうと、VPN クライアントがヘッドエンド デバイスに接続できなくなります。リモート アクセス VPN にクリプト ACL を誤って設定してしまうと、%ASA-3-713042: IKE Initiator unable to find policy: Intf 2 エラー メッセージを受け取る場合があります。
Cisco VPN Client と PIX/ASA 間にリモート アクセス VPN 接続を設定する方法を示した設定例は、『Windows 2003 IAS RADIUS サーバの Active Directory 認証を使用した PIX/ASA 7.x と Cisco VPN Client 4.x 間のリモートアクセス VPN の設定例』を参照してください。
-
使用しているデバイスで、NAT 免除 ACL を使用するように設定されていることを確認します。ルータの場合、これは route-map コマンドを使用することを意味します。PIX や ASA の場合、これは nat (0) コマンドを使用することを意味します。NAT 免除 ACL は、LAN-to-LAN 設定とリモート アクセス設定の両方に必要です。
-
この例では、IOS ルータで 192.168.100.0 /24 と 192.168.200.0 /24 または 192.168.1.0 /24 との間で送信されるトラフィックを NAT 処理から除外するよう設定しています。その他の宛先に送られるトラフィックは、NAT overload 設定の対象となります。
access-list 110 deny ip 192.168.100.0 0.0.0.255 192.168.200.0 0.0.0.255 access-list 110 deny ip 192.168.100.0 0.0.0.255 192.168.1.0 0.0.0.255 access-list 110 permit ip 192.168.100.0 0.0.0.255 any route-map nonat permit 10 match ip address 110 ip nat inside source route-map nonat interface FastEthernet0/0 overload
-
この例では、PIX で 192.168.100.0 /24 と 192.168.200.0 /24 または 192.168.1.0 /24 との間で送信されるトラフィックを NAT 処理から除外するよう設定しています。その他のトラフィックは、NAT overload 設定の対象となります。
access-list noNAT extended permit ip 192.168.100.0 255.255.255.0 192.168.200.0 255.255.255.0 access-list noNAT extended permit ip 192.168.100.0 255.255.255.0 192.168.1.0 255.255.255.0 nat (inside) 0 access-list noNAT nat (inside) 1 0.0.0.0 0.0.0.0 global (outside) 1 interface
注:下記の例(access-list noNAT)に示されているように、NAT 免除 ACL が機能するのは IP アドレスや IP ネットワークでだけで、クリプト マップ ACL に一致している必要があります。NAT 免除 ACL はポート番号(たとえば 23、25 など)では機能しません。
注:NAT 免除(nat 0)ACL に誤設定があると、下記のエラー メッセージを受け取る場合があります。
%PIX-3-305005: No translation group found for icmp src outside:192.168.100.41 dst inside:192.168.200.253 (type 8, code 0)
注: 誤った例:
access-list noNAT extended permit ip 192.168.100.0 255.255.255.0 192.168.200.0 255.255.255.0 eq 25
NAT 免除(nat 0)が機能しない場合、機能させるためには、それを削除してから、NAT 0 コマンドを発行してみてください。
-
-
ACL の方向が逆になっておらず、かつ、正しいタイプであることを確認してください。
-
LAN-to-LAN 設定のためのクリプト ACL と NAT 免除 ACL は、ACL を設定するデバイスの視点から記述する必要があります。このことは、各 ACL は互いにミラー関係である必要があることを意味します。この例では、LAN-to-LAN トンネルを 192.168.100.0 /24 と 192.168.200.0 /24 との間に設定しています。

Router A のクリプト ACL
access-list 110 permit ip 192.168.100.0 0.0.0.255 192.168.200.0 0.0.0.255
Router B のクリプト ACL
access-list 110 permit ip 192.168.200.0 0.0.0.255 192.168.100.0 0.0.0.255
注:ここでは説明していませんが、同じ概念が PIX および ASA セキュリティ アプライアンスにも該当します。
-
リモート アクセス設定のためのスプリット トンネル ACL は、VPN クライアントがアクセスする必要のあるネットワークへのトラフィックを許可する標準アクセス リストである必要があります。
注:拡張アクセス リストにおいて、スプリット トンネル ACL の発信元に「any」を指定することは、スプリット トンネルをディセーブルにすることと同じです。スプリット トンネル用の拡張 ACL では発信元ネットワークだけを使用します。
注: 正しい例:
access-list 140 permit ip 10.1.0.0 0.0.255.255 10.18.0.0 0.0.255.255
注: 誤った例:
access-list 140 permit ip any 10.18.0.0 0.0.255.255

-
Cisco IOS
router(config)#access-list 10 permit ip 192.168.100.0 router(config)#crypto isakmp client configuration group MYGROUP router(config-isakmp-group)#acl 10
-
Cisco PIX 6.x
pix(config)#access-list 10 permit 192.168.100.0 255.255.255.0 pix(config)#vpngroup MYGROUP split-tunnel 10
-
Cisco PIX/ASA 7.x
securityappliance(config)#access-list 10 standard permit 192.168.100.0 255.255.255.0 securityappliance(config)#group-policy MYPOLICY internal securityappliance(config)#group-policy MYPOLICY attributes securityappliance(config-group-policy)#split-tunnel-policy tunnelspecified securityappliance(config-group-policy)#split-tunnel-network-list value 10
-
-
ISAKMP ポリシーを確認する
IPSec トンネルがアップになっていない場合は、リモート ピアとの間で ISAKMP ポリシーが一致しているかどうか確認してください。この ISAKMP ポリシーは、サイト間(L2L)とリモート アクセス IPSec VPN の両方に適用されます。
Cisco VPN クライアントまたはサイト間 VPN でリモート デバイスとのトンネルが確立できない場合は、2 つのピアで同じ暗号、ハッシュ、認証、デフィーヘルマン パラメータ値が設定されていること、およびリモート ピアのポリシーで、発信側が送信するポリシーで指定されているライフタイムと同じかそれ以下のライフタイムが指定されていることを確認してください。ライフタイムが同じでない場合、セキュリティ アプライアンスでは短い方のライフタイムが使用されます。一致の条件が満たされない場合、ISAKMP はネゴシエーションを拒否し、SA は確立されません。
"removing peer from peer table failed- no match"
このメッセージは、通常、ISAKMP ポリシーのミスマッチで表示されます。
Cisco VPN Client がヘッドエンド デバイスに接続できない場合、ISAKMP ポリシーのミスマッチが問題である可能性があります。ヘッドエンド デバイスは、Cisco VPN Client の IKE プロポーザルのいずれかに一致している必要があります。
注:ISAKMP ポリシーと PIX/ASA で使用されている IPSec トランスフォーム セットに関して、Cisco VPN クライアントでは DES と SHA を組み合せたポリシーは使用できません。DES を使用している場合は、ハッシュ アルゴリズムに MD5 を使用する必要があります。または、3DES と SHA、および 3DES と MD5 といった他の組み合せも使用できます。
ルーティングが正しいことを確認する
ルーティングは、ほとんどのすべての IPSec VPN の展開において重要な部分です。ルータや PIX あるいは ASA セキュリティ アプライアンスなどの暗号化デバイスで、VPN トンネルへトラフィックを送信するために正しいルーティング情報が設定されていることを確認してください。さらに、ゲートウェイ デバイスの背後に他のルータがある場合は、トンネルへの到達方法と、反対側にあるネットワークについて、これらのルータで認識されていることを確認してください。
VPN の展開において、ルーティングのキーとなるコンポーネントの 1 つに Reverse Route Injection(RRI)があります。RRI により、リモート ネットワークまたは VPN クライアントに対するエントリが VPN ゲートウェイのルーティング テーブルにダイナミックにインポートされます。RRI によって設定されたルートは EIGRP や OSPF などのルーティング プロトコルによって再配布できるため、このようなルートは、ルートを設定したデバイスやネットワーク上にある他のデバイスにとって便利です。
-
LAN-to-LAN の設定では、トラフィックを暗号化する必要のあるネットワークへのルートを各エンドポイントが認識していることが重要です。たとえば、Router A は、Router B の背後にあるネットワークを 10.89.129.2 経由するルートとして認識している必要があります。 Router B は 192.168.100.0 /24 ルートも同様に認識している必要があります。

-
各ルータで適切なルートが確実に認識されているようにする第一の方法は、各宛先ネットワークへのスタティック ルートを設定することです。たとえば、Router A では次のような route 文を設定できます。
ip route 0.0.0.0 0.0.0.0 172.22.1.1 ip route 192.168.200.0 255.255.255.0 10.89.129.2 ip route 192.168.210.0 255.255.255.0 10.89.129.2 ip route 192.168.220.0 255.255.255.0 10.89.129.2 ip route 192.168.230.0 255.255.255.0 10.89.129.2
Router A を PIX や ASA に置き換えると、設定は次のようになります。
route outside 0.0.0.0 0.0.0.0 172.22.1.1 route outside 192.168.200.0 255.255.255.0 10.89.129.2 route outside 192.168.200.0 255.255.255.0 10.89.129.2 route outside 192.168.200.0 255.255.255.0 10.89.129.2 route outside 192.168.200.0 255.255.255.0 10.89.129.2
-
各エンドポイントの背後に非常に多数のネットワークがある場合には、スタティック ルートの設定は維持するのが困難になります。そのような場合には、代わりに上記の Reverse Route Injection(RRI)を使用することを推奨します。RRI はクリプト マップ用 ACL に記載されているすべてのリモート ネットワークのルーティング テーブルのルートをインポートします。たとえば、Router A のクリプト マップ用 ACL とクリプト マップは次のようになります。
access-list 110 permit ip 192.168.100.0 0.0.0.255 192.168.200.0 0.0.0.255 access-list 110 permit ip 192.168.100.0 0.0.0.255 192.168.210.0 0.0.0.255 access-list 110 permit ip 192.168.100.0 0.0.0.255 192.168.220.0 0.0.0.255 access-list 110 permit ip 192.168.100.0 0.0.0.255 192.168.230.0 0.0.0.255 crypto map myMAP 10 ipsec-isakmp set peer 10.89.129.2 reverse-route set transform-set mySET match address 110
Router A を PIX や ASA で置き換えると、設定は次のようになります。
access-list cryptoACL extended permit ip 192.168.100.0 255.255.255.0 192.168.200.0 255.255.255.0 access-list cryptoACL extended permit ip 192.168.100.0 255.255.255.0 192.168.210.0 255.255.255.0 access-list cryptoACL extended permit ip 192.168.100.0 255.255.255.0 192.168.220.0 255.255.255.0 access-list cryptoACL extended permit ip 192.168.100.0 255.255.255.0 192.168.230.0 255.255.255.0 crypto map myMAP 10 match address cryptoACL crypto map myMAP 10 set peer 10.89.129.2 crypto map myMAP 10 set transform-set mySET crypto map mymap 10 set reverse-route
-
-
リモート アクセスの設定では、ルーティングの変更は常に必要とは限りません。しかし、VPN ゲートウェイ ルータやセキュリティ アプライアンスの背後に他のルータがある場合は、これらのルータで VPN クライアントへのパスを何らかの方法で学習する必要があります。この例では、VPN クライアントが接続する際に 10.0.0.0 /24 の範囲のアドレスを付与されると仮定しています。

ゲートウェイと他のルータとの間でルーティング プロトコルが使用されていない場合は、Router 2 などのルータでスタティック ルートを使用できます。
ip route 10.0.0.0 255.255.255.0 192.168.100.1
ゲートウェイと他のルータとの間で EIGRP や OSPF などのルーティング プロトコルを使用している場合は、先に説明したように Reverse Route Injection(RRI)を使用することを推奨します。RRI により、VPN クライアントへのルートがゲートウェイのルーティング テーブルに自動的に追加されます。この後、これらのルートはネットワーク上の他のルータに配信されます。
-
Cisco IOS ルータ:
crypto dynamic-map dynMAP 10 set transform-set mySET reverse-route crypto map myMAP 60000 ipsec-isakmp dynamic dynMAP
-
Cisco PIX または ASA セキュリティ アプライアンス:
crypto dynamic-map dynMAP 10 set transform-set mySET crypto dynamic-map dynMAP 10 set reverse-route crypto map myMAP 60000 ipsec-isakmp dynamic dynMAP
-
注:VPN クライアントに割り当てられた IP アドレスのプールが、ヘッドエンド デバイスの内部ネットワークと重複していると、ルーティングに問題が生じます。詳細は、「プライベート ネットワークのオーバーラップ」のセクションを参照してください。
トランスフォーム セットが正しいことを確認する
両端のトランスフォーム セットで使用する IPSec の暗号とハッシュ アルゴリズムが同じであることを確認してください。詳細は、『Cisco セキュリティ アプライアンス コンフィギュレーション ガイド』の「コマンド リファレンス」セクションを参照してください。
注:ISAKMP ポリシーと PIX/ASA で使用されている IPSec トランスフォーム セットに関して、Cisco VPN クライアントでは DES と SHA を組み合せたポリシーは使用できません。DES を使用している場合は、ハッシュ アルゴリズムに MD5 を使用する必要があります。または、3DES と SHA、および 3DES と MD5 といった他の組み合せも使用できます。
クリプト マップのシーケンス番号と名前を確認する
スタティックおよびダイナミックなピアが同じクリプト マップで設定されている場合、クリプト マップのエントリの順序は非常に重要です。ダイナミック クリプト マップのエントリのシーケンス番号は、他のスタティック クリプト マップのすべてのエントリよりも大きい必要があります。スタティック エントリにダイナミック エントリよりも高い番号付けがされている場合、これらのピアでの接続が失敗して、デバッグでは次のように表示されます。
IKEv1]: Group = x.x.x.x, IP = x.x.x.x, QM FSM error (P2 struct &0x49ba5a0, mess id 0xcd600011)! [IKEv1]: Group = x.x.x.x, IP = x.x.x.x, Removing peer from correlator table failed, no match!
注:セキュリティ アプライアンスの各インターフェイスに許可されているのは、ダイナミック クリプトマップが 1 つだけです。
スタティックなエントリとダイナミックなエントリが含まれるクリプト マップの、正しい番号付けの例を次に示します。ダイナミックなエントリが最大のシーケンス番号になっています。また、スタティックなエントリを追加するための余裕を持たせています。
crypto dynamic-map cisco 20 set transform-set myset crypto map mymap 10 match address 100 crypto map mymap 10 set peer 172.16.77.10 crypto map mymap 10 set transform-set myset crypto map mymap interface outside crypto map mymap 60000 ipsec-isakmp dynamic cisco
注:クリプト マップ名では大文字と小文字が区別されます。
注:クリプト マップが IPSec トンネルの起点/終点の適切なインターフェイスに適用されていることを確認してください。
複数の VPN トンネルを同じインターフェイスで終端するシナリオでは、同じ名前のクリプト マップを作成する必要がありますが(インターフェイスごとに 1 つのクリプト マップしか許可されないため)、シーケンス番号は異なるものにします。このことは、ルータ、PIX、ASA に該当します。
同じインターフェイスに同じクリプト マップを異なるシーケンス番号で設定するハブ PIX コンフィギュレーションについての詳細は、『VPN Client と拡張認証による、ハブ PIX とリモート PIX 間の IPSec 設定』を参照してください。同様に、L2L とリモート アクセス VPN シナリオのためのクリプト マップ設定についての詳細は、『PIX/ASA 7.X:既存の L2L VPN への新しいトンネルやリモートアクセスの追加』を参照してください。
ピア IP アドレスが正しいことを確認する
PIX/ASA セキュリティ アプライアンス 7.x LAN-to-LAN(L2L)の IPsec VPN 設定では、IPSec での接続に特定した記録のデータベースの作成と管理のため、tunnel-group <name> type ipsec-l2l コマンドでトンネル グループの <name> にリモート ピアの IP アドレス(リモートのトンネル エンド)を指定する必要があります。tunnel group name コマンドと Crypto map set address コマンドでのピアの IP アドレスは一致している必要があります。ASDM で VPN を設定する際には、トンネル グループ名は正しいピアの IP アドレスで自動的に生成されます。
PIX 6.x LAN-to-LAN(L2L)IPSec VPN コンフィギュレーションで、IPSec VPN 接続が成功するには、ピアの IP アドレス(リモートのトンネル エンド)がクリプト マップ内の isakmp key address と set peer のコマンドと一致している必要があります。
L2L ピアについて XAUTH をディセーブルにする
LAN-to-LAN トンネルとリモート アクセス VPN が同じクリプト マップに設定されていると、LAN-to-LAN ピアに XAUTH 情報の入力を求めるメッセージが表示され、LAN-to-LAN トンネルに障害が発生します。
注:この問題は Cisco IOS および PIX 6.x の場合にのみ発生します。PIX/ASA 7.x ではトンネル グループを使用しているため、この問題の影響を受けません。
isakmp キーを入力するときに、no-xauth キーワードを使用すると、デバイスからピアに対して XAUTH 情報(ユーザ名やパスワード)の入力を求められなくなります。このキーワードによって、スタティックな IPSec ピアに対する XAUTH がディセーブルになります。同じクリプト マップで、L2L と RA VPN の両方が設定されているデバイスで、これと同様のコマンドを入力します。
router(config)# crypto isakmp key cisco123 address 172.22.1.164 no-xauth
PIX/ASA 7.x が Easy VPN サーバとして動作しているシナリオでは、Xauth の問題が原因で Easy VPN クライアントがヘッドエンドに接続できなくなります。この問題を解決するには、次に示すように、PIX/ASA でユーザ認証をディセーブルにします。
ASA(config)#tunnel-group example-group type ipsec-ra ASA(config)#tunnel-group example-group ipsec-attributes ASA(config-tunnel-ipsec)#isakmp ikev1-user-authentication none
isakmp ikev1-user-authentication コマンドについての詳細は、このドキュメントの「その他」のセクションを参照してください。
問題:VPN クライアントが ASA/PIX で接続できない
X-auth が Radius サーバで使用されていると、Cisco VPN Client では認証ができません。
ソリューション
この問題は xauth のタイムアウトによるものである可能性があります。この問題を解決するには、AAA サーバのタイムアウト値を大きくします。
次に例を示します。
Hostname(config)#aaa-server test protocol radius hostname(config-aaa-server-group)#aaa-server test host 10.2.3.4 hostname(config-aaa-server-host)#timeout 10
問題:リモート アクセスと EZVPN のユーザが VPN に接続するがリソースにいっさいアクセスできない
リモート アクセス ユーザが VPN にアクセスすると、インターネットにアクセスできなくなる。
リモート アクセス ユーザが同じデバイス上の他の VPN の背後にあるリソースにアクセスできない。
リモート アクセス ユーザがローカル ネットワークにしかアクセスできない。
ソリューション
DMZ にあるサーバにアクセスできない
VPN クライアントが VPN ヘッドエンド デバイス(PIX/ASA/IOS ルータ)との間に IPSec トンネルを確立すると、その後 VPN クライアント ユーザは Inside ネットワーク(10.10.10.0/24)のリソースにはアクセスできますが、DMZ ネットワーク(10.1.1.0/24)にはアクセスできなくなります。
図解 1:

DMZ ネットワークのリソースにアクセスするために、スプリット トンネル、NO NAT 設定がヘッドエンド デバイスに追加されていることを確認してください。
例 1:
|
ASA/PIX |
|---|
ciscoasa#show running-config !--- Inside ネットワーク アクセスのためのスプリット トンネル access-list vpnusers_spitTunnelAcl permit ip 10.10.10.0 255.255.0.0 any !--- DMZ ネットワーク アクセスのためのスプリット トンネル access-list vpnusers_spitTunnelAcl permit ip 10.1.1.0 255.255.0.0 any !--- リモート VPN Client に IP アドレスをダイナミックに割り当てるための !--- アドレス プールを作成します。 ip local pool vpnclient 192.168.1.1-192.168.1.5 !--- このアクセス リストは、nat 0 コマンドに使用されます。 !--- このコマンドは、アクセス リストにマッチするトラフィックが NAT 処理を受けないようにします。 !--- DMZ ネットワークに Nat を適用しない。 access-list nonat-dmz permit ip 10.1.1.0 255.255.255.0 192.168.1.0 255.255.255.0 !--- Inside ネットワークに Nat を適用しない。 access-list nonat-in permit ip 10.10.10.0 255.255.255.0 192.168.1.0 255.255.255.0 !--- nat 0 は、この ACL の nonat で指定されているネットワークに対する NAT を防止します。 . nat (DMZ) 0 access-list nonat-dmz nat (inside) 0 access-list nonat-in |
NAT 設定に新しいエントリを追加した後には、NAT 変換をクリアします。
Clear xlate Clear local
確認:
トンネルが確立されたら、Cisco VPN Client に進み、Status > Route Details の順に選択して、DMZ ネットワークと Inside ネットワークの両方について安全なルートが表示されることを確認してください。

非武装地帯(DMZ)ネットワークにあるメール サーバに対するアクセス用に PIX ファイアウォールを設定する方法についての詳細は、『PIX/ASA 7.x:DMZ でのメール サーバ アクセスの設定例』を参照してください。
既存の L2L VPN コンフィギュレーションに新規の VPN トンネルやリモート アクセス VPN を追加するために必要な手順は、『PIX/ASA 7.x:既存の L2L VPN への新しいトンネルやリモート アクセスの追加』を参照してください。
VPN Client が Cisco 適応型セキュリティ アプライアンス(ASA)5500 シリーズ セキュリティ アプライアンスにトンネリングされている場合に、インターネットへのアクセスを許可する方法の手順は、『PIX/ASA 7.x:ASA で VPN クライアントのスプリット トンネリングを許可するための設定例』
を参照してください。
Cisco VPN Client(Windows 用は 4.x)と PIX 500 シリーズ セキュリティ アプライアンス 7.x 間にリモート アクセス VPN 接続を設定する方法についての詳細は、『Windows 2003 IAS RADIUS サーバの Active Directory 認証を使用した PIX/ASA 7.x と Cisco VPN Client 4.x 間のリモートアクセス VPN の設定例』を参照してください。
VPN クライアントが DNS を解決できない
トンネルを確立した後、VPN クライアントが DNS を解決できない場合は、ヘッドエンド デバイス(ASA/PIX)での DNS サーバの設定に問題がある可能性があります。さらに、VPN クライアントと DNS サーバ間の接続をチェックしてください。DNS サーバの設定はグループ ポリシーの設定の下で行い、tunnel-group の一般的な属性の中のグループ ポリシーの下で適用する必要があります。次に例を示します。
!--- vpn3000 という名前のグループ ポリシーを作成して、 !--- そのグループ ポリシーに DNS サーバの IP アドレス(172.16.1.1)と、 !--- ドメイン名(cisco.com)を指定します。 group-policy vpn3000 internal group-policy vpn3000 attributes dns-server value 172.16.1.1 default-domain value cisco.com !--- default-group-policy を使用して、トンネル グループに !--- グループ ポリシー(vpn3000)を関連付けます。 tunnel-group vpn3000 general-attributes default-group-policy vpn3000
VPN クライアントが内部サーバに名前で接続できない
VPN クライアントがリモートやヘッドエンド内部ネットワークのホストやサーバに、名前で ping を通すことができません。この問題を解決するには、ASA でスプリット DNS コンフィギュレーションをイネーブルにする必要があります。
スプリット トンネル:インターネットや除外されたネットワークにアクセスできない
スプリット トンネルを設定すると、リモート アクセス IPSec クライアントが条件に応じてパケットを暗号化された形式で IPSec トンネルに送信したり、あるいはパケットをネットワーク インターフェイスに暗号化されていないクリアテキストの形式で送信したりして、その後に最終的な宛先に送信されるようにすることができます。デフォルトでは、スプリット トンネリングはディセーブルになっていて、全通信が暗号化対象となります。
split-tunnel-policy {tunnelall | tunnelspecified | excludespecified}
注:オプション「excludespecified」がサポートされているのは Cisco VPN クライアントに対してだけで、EZVPN クライアントに対してはサポートされていません。
ciscoasa(config-group-policy)#split-tunnel-policy excludespecified
スプリット トンネリングの詳細な設定例は、下記のドキュメントを参照してください。
ヘアピニング
この機能は、あるインターフェイスに着信した後に同じインターフェイスからルーティングされる VPN トラフィックに対して便利な機能です。たとえば、ハブ アンド スポークの VPN ネットワークを構築していて、セキュリティ アプライアンスがハブ、リモート VPN ネットワークがスポークである場合、あるスポークが他のスポークと通信するためには、トラフィックがセキュリティ アプライアンスに着信した後、他のスポーク宛てに再び発信される必要があります。
トラフィックが同じインターフェイスから着発信できるようにするには、same-security-traffic 設定を使用します。
securityappliance(config)# same-security-traffic permit intra-interface
ローカル LAN へのアクセス
リモート アクセス ユーザは VPN に接続し、ローカル ネットワークにしかアクセスできません。
さらに詳細な設定例は、『PIX/ASA 7.x:VPN クライアントでローカル LAN アクセスを許可するための設定例』を参照してください。
プライベート ネットワークのオーバーラップ
問題
トンネルを確立した後に内部ネットワークにアクセスできない場合は、VPN クライアントに割り当てている IP アドレスが、ヘッドエンド デバイスの背後にある内部ネットワークと重複していないかどうかを確認してください。
ソリューション 1
VPN クライアント、ヘッドエンド デバイスの内部ネットワーク、VPN クライアントの内部ネットワークにそれぞれ割り当てられるプール内の IP アドレスが別のネットワークにあることを、常時、確認してください。同一のメジャー ネットワークを別のサブネットに割り当てることはできますが、ルーティングに問題が生じる場合があります。
詳細な例については、「DMZ にあるサーバにアクセスできない」のセクションの「図解 1」と「例 1」を参照してください。
ソリューション 2
VPN クライアント内部ネットワークとヘッドエンド デバイス内部ネットワークに同じサブネットを使用する必要がある場合は、スプリット トンネリングをディセーブルにしてください。
デフォルトでは、スプリット トンネリングはディセーブルになっています。VPN クライアントがすべてのトラフィックをトンネルで送信できるようにするには、ヘッドエンド デバイスでスプリット トンネリングをディセーブルにします。VPN クライアントのローカル ネットワークでは VPN クライアントのマシンにアクセスできない点に注意してください。
問題:3 人を超える VPN クライアント ユーザに接続できない
3 人の VPN クライアントが ASA/PIX に接続していると、4 人目の接続が失敗します。失敗した際には、次のエラー メッセージが表示されます。
Secure VPN Connection terminated locally by the client.
Reason 413: User Authentication failed.
tunnel rejected; the maximum tunnel count has been reached
ソリューション
ほとんどの場合、この問題はグループ ポリシー内の同時ログイン設定と最大セッション制限に関係するものです。詳細は、『Cisco ASA 5500 シリーズ バージョン 5.2 用に選択された ASDM VPN 設定手順』の「グループ ポリシーの設定」セクションを参照してください。
同時ログインを設定する
ASDM で Inherit チェック ボックスが選択されている場合、ユーザに許可されているのはデフォルトの同時ログイン数になります。同時ログイン数のデフォルト値は 3 です。
この問題を解決するには、同時ログイン数の値を増やします。
ASDM を起動し、Configuration > VPN > Group Policy の順に移動します。

適切な Group を選択し、Edit ボタンをクリックします。

General タブを開いたら、Connection Settings の下にある Simultaneous Logins に対する Inherit チェック ボックスの選択を解除します。フィールドに適切な値を選択します。

注:このフィールドの最小値は 0 です。この値にすると、ログインがディセーブルになり、ユーザ アクセスができなくなります。
CLI による ASA/PIX の設定
同時ログイン数を任意の数に設定するには、次の手順を実行します。この例では、任意の値として 20 を選択しています。
ciscoasa(config)#group-policy Bryan attributes ciscoasa(config-group-policy)#vpn-simultaneous-logins 20
このコマンドの詳細は、『Cisco セキュリティ アプライアンス コマンド リファレンス、バージョン 7.2』を参照してください。
VPN セッションをセキュリティ アプライアンスで許可されているよりも低い値に制限するには、グローバル コンフィギュレーション モードで vpn-sessiondb max-session-limit コマンドを使用します。セッションの制限を解除するには、このコマンドの no 形式を使用します。現在の設定を上書きするには、このコマンドを再度使用します。
vpn-sessiondb max-session-limit {session-limit}
次の例には、最大 VPN セッションの制限を 450 に設定する方法が示されています。
hostname#vpn-sessiondb max-session-limit 450
コンセントレータを設定する
エラー メッセージ
20932 10/26/2007 14:37:45.430 SEV=3 AUTH/5 RPT=1863 10.19.187.229 Authentication rejected: Reason = Simultaneous logins exceeded for user handle = 623, server = (none), user = 10.19.187.229, domain = <not specified>
ソリューション
同時ログイン数を任意の数に設定するには、次の手順を実行します。次のように、SA の同時ログインを 5 に設定してみることもできます。
Configuration > User Management > Groups > Modify 10.19.187.229 > General > Simultaneouts Logins の順に選択して、ログイン数を 5 に変更します。
問題:トンネルが確立されるとセッションやアプリケーションを開始できず転送が遅くなる
IPSec トンネルを確立した後に、トンネル経由でアプリケーションやセッションを開始できなくなることがあります。
ソリューション
ping コマンドを使用してネットワークを確認し、ネットワークからアプリケーション サーバに到達できるかどうかを確認します。これはルータまたは PIX/ASA デバイスを通過する一時的なパケットのための maximum segment size(MSS; 最大セグメント サイズ)、特に SYN ビットが設定された TCP セグメントに関する問題である可能性があります。
Cisco IOS ルータ
この問題を解決するには、次の手順を実行します。
ルータの Outside インターフェイス(トンネル終端インターフェイス)の MSS 値を変更します。MSS の値を設定するには、次の手順を実行します。
Router>enable Router#configure terminal Router(config)#interface ethernet0/1 Router(config-if)#ip tcp adjust-mss 1300 Router(config-if)#end
これらのメッセージには、TCP MSS のデバッグ出力が表示されています。
Router#debug ip tcp transactions Sep 5 18:42:46.247: TCP0: state was LISTEN -> SYNRCVD [23 -> 10.0.1.1(38437)] Sep 5 18:42:46.247: TCP: tcb 32290C0 connection to 10.0.1.1:38437, peer MSS 1300, MSS is 1300 Sep 5 18:42:46.247: TCP: sending SYN, seq 580539401, ack 6015751 Sep 5 18:42:46.247: TCP0: Connection to 10.0.1.1:38437, advertising MSS 1300 Sep 5 18:42:46.251: TCP0: state was SYNRCVD -> ESTAB [23 -> 10.0.1.1(38437)]
MSS は設定に従いルータ上で 1300 に調整されています。
詳細は、『PIX/ASA 7.x と IOS:VPN フラグメンテーション』参照してください。
PIX/ASA 7.X
MTU サイズ エラー メッセージと MSS の問題があるため、インターネットに正常にアクセスできなくなったり、トンネル経由での転送が遅くなります。この問題を解決するには、次のドキュメントを参照してください。
PIX/ASA 7.x と IOS:VPN フラグメンテーション
PIX/ASA 7.0 の問題:MSS の超過 - HTTP クライアントで一部の Web サイトを表示できない
問題:ASA/PIX から VPN トンネルを開始できない
ASA/PIX インターフェイスから VPN トンネルの始動ができず、トンネルが確立された後でも、リモートのエンド/VPN クライアントでは、VPN トンネルで ASA/PIX の Inside インターフェイスに ping を通すことができません。たとえば、VPN クライアントでは、VPN トンネル経由で ASA の Inside インターフェイスへの SSH や HTTP での接続が開始できない場合があります。
ソリューション
グローバル コンフィギュレーション モードで management-access コマンドが設定されていないと、PIX の Inside ネットワークではトンネルの反対側からの ping を受信できません。
PIX-02(config)#management-access inside PIX-02(config)#show management-access management-access inside
注:このコマンドは、VPN トンネル経由で ASA の Inside インターフェイスへの SSH や HTTP での接続を開始するのにも有効です。
注:この情報は DMZ インターフェイスにも当てはまります。たとえば、PIX/ASA の DMZ インターフェイスに ping を通したり、DMZ インターフェイスからトンネルを始動したりする場合は、management-access DMZ コマンドが必要です。
PIX-02(config)#management-access DMZ
注:VPN クライアントで接続ができない場合は、ESP と UDP のポートがオープンであることを確認します。ポートがオープンではない場合、VPN クライアントの接続エントリでこのポートを選択することにより、TCP 10000 での接続を試みます。modify > transport tab > IPsec over TCP の順に右クリックします。
その他
バージョン 7.0.x を実行している PIX/ASA から、7.2.x を実行している他のセキュリティ アプライアンスに VPN の設定を転送すると、次のエラー メッセージが表示されます。
ERROR: The authentication-server-group none command has been deprecated. The "isakmp ikev1-user-authentication none" command in the ipsec-attributes should be used instead.
authentication-server-group は、7.2(1) 以降ではサポートされていません。このコマンドは廃止されており、tunnel-group の general-attributes 設定モードに移行されています。
このコマンドのさらに詳細な情報は、コマンド リファレンスの「isakmp ikev1-user-authentication」セクションを参照してください。
問題
VPN トンネルの一端で QoS をイネーブルにしてあると、次のようなエラー メッセージを受け取る場合があります。
IPSEC: Received an ESP packet (SPI= 0xDB6E5A60, sequence number= 0x7F9F) from 10.18.7.11 (user= ghufhi) to 172.16.29.23 that failed anti-replay checking
ソリューション:
通常、このメッセージは、トンネルの一端で QoS が実行されている場合に発生します。これが発生するのは、順序を外れたパケットが検出される場合です。QoS をディセーブルにすると、これを止められますが、トラフィックがトンネルを通過できる限りは、これを無視することもできます。
問題:警告:クリプト マップ エントリが不完全になる
次のコマンドを発行すると、次の出力に示されているようなエラー メッセージを受け取る場合があります。
ciscoasa(config)#crypto map mymap 20 ipsec-isakmp WARNING: crypto map entry will be incomplete
ソリューション:
これは、新規のクリプト マップを作成するときの一般的な Warning メッセージで、動作前に設定される必要がある、アクセスリスト(マッチ アドレス)、トランスフォーム セット、ピア アドレスなどを設定するためのリマインダとなります。クリプト マップを定義するために入力する最初の行がコンフィギュレーションに表示されないのも、正常です。
show crypto isakmp sa コマンドと debug コマンドの出力に AG_INIT_EXCH メッセージが表示される
トンネルが始動されないと、show crypto isakmp sa コマンドの出力と debug 出力にも AG_INIT_EXCH メッセージが表示されます。この理由は ISAKMP ポリシーのミスマッチによる可能性がありますが、あるいは、ポート udp 500 が途中でブロッキングされている場合も考えられます。
デバッグ メッセージ「Received an IPC message during invalid state」が表示される
このエラーでは、VPN トンネルの接続解除について対応することはなく、どちらかと言うと、情報提供のためのメッセージです。
NetPro ディスカッション フォーラム:特集対話
Networking Professionals Connection はネットワーキング プロフェッショナルが、ネットワーキングに関するソリューション、製品、およびテクノロジーについての質問、提案、情報を共有するためのフォーラムです。特集リンクでは、このテクノロジー分野での最新の対話を取り上げています。| NetPro ディスカッション フォーラム:VPN に関する特集対話 |
|---|
| サービス プロバイダー:VPN サービス アーキテクチャ |
| サービス プロバイダー:ネットワーク管理 |
| バーチャル プライベート ネットワーク:セキュリティ |
| バーチャル プライベート ネットワーク:一般的なトピック |
