この製品のドキュメントセットは、偏向のない言語を使用するように配慮されています。このドキュメントセットでの偏向のない言語とは、年齢、障害、性別、人種的アイデンティティ、民族的アイデンティティ、性的指向、社会経済的地位、およびインターセクショナリティに基づく差別を意味しない言語として定義されています。製品ソフトウェアのユーザインターフェイスにハードコードされている言語、RFP のドキュメントに基づいて使用されている言語、または参照されているサードパーティ製品で使用されている言語によりドキュメントに例外が存在する場合があります。シスコのインクルーシブ ランゲージの取り組みの詳細は、こちらをご覧ください。
シスコは世界中のユーザにそれぞれの言語でサポート コンテンツを提供するために、機械と人による翻訳を組み合わせて、本ドキュメントを翻訳しています。ただし、最高度の機械翻訳であっても、専門家による翻訳のような正確性は確保されません。シスコは、これら翻訳の正確性について法的責任を負いません。原典である英語版(リンクからアクセス可能)もあわせて参照することを推奨します。
このドキュメントでは、IPsec VPN の問題の最も一般的な解決策について説明します。
ここで説明するソリューションは、シスコテクニカルサポートが解決したサービスリクエストから直接引用したものです。
これらのソリューションの多くは、IPSec VPN接続の詳細なトラブルシューティングの前に実装されています。
このドキュメントでは、接続のトラブルシューティングを開始する前に試す一般的な手順の概要を示します。
このドキュメントの設定例はルータとセキュリティアプライアンスで使用するものですが、ほとんどすべての概念はVPN 3000(VPN 3000)にも適用できます。
Cisco IOS®ソフトウェアのとの両方でIPSecのトラブルシューティングに使用される一般的なdebugコマンドの説明については、『IP Securityのトラブルシューティング:debugコマンドの説明と使用』を参照してください。
注:ASAは、IPSec VPNトンネルを介してマルチキャストトラフィックを渡しません。
警告:このドキュメントで説明するソリューションの多くは、デバイス上のすべてのIPSec VPN接続が一時的に失われる原因となる可能性があります。
これらのソリューションは、十分に注意して、組織の変更管理ポリシーに従って適用することを推奨いたします。
次のシスコデバイスでのIPsec VPN設定に関する知識があることが推奨されます。
Cisco ASA 5500 シリーズ セキュリティ アプライアンス
Cisco IOS(R) ルータ
このドキュメントの情報は、次のソフトウェアとハードウェアのバージョンに基づいています。
Cisco ASA 5500 シリーズ セキュリティ アプライアンス
Cisco IOS®
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、クリアな(デフォルト)設定で作業を開始しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。
ドキュメント表記の詳細については、『シスコテクニカルティップスの表記法』を参照してください。
最近設定または設定を変更した IPSec VPN ソリューションが機能しない。
現在の IPSec VPN の設定が機能しなくなった。
このセクションでは、IPSec VPN に関する問題の最も一般的なソリューションについて説明します。
これらのソリューションは特定の順序で記載されているわけではありませんが、詳細な修復を行う前に確認または試行する項目のチェックリストとして使用できます。
これらのソリューションはすべて、TACサービスリクエストから直接提供され、数多くの問題を解決しています。
注:これらのセクションで示すコマンドの一部は、スペースの関係上2行にわたって表記されています。
NAT-Traversal(NAT-T)を使用すると、Linksys SOHOルータなどのNATデバイスまたはPATデバイスを介してVPNトラフィックを送受信できます。
NAT-Tがイネーブルになっていない場合、VPN Clientユーザは問題なくASAに接続しているように見えますが、セキュリティアプライアンスの背後にある内部ネットワークにはアクセスできません。
NAT/PATデバイスでNAT-Tをイネーブルにしていないと、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がキープアライブ時間(デフォルト)です。
ASA
securityappliance(config)#crypto isakmp nat-traversal 20
これが機能するには、クライアントでも修正が必要です。
Cisco VPN Clientで、Connection Entriesに移動し、Modifyをクリックします。新しいウィンドウが開き、「トランスポート」タブを選択します。
このタブで、Enable Transparent Tunnelingand theIPSec over UDP ( NAT / PAT )オプションボタンをクリックします。次にSaveをクリックして、接続をテストします。
ASAはNATデバイスとして動作するため、ACLの設定により、NAT-T用UDP 4500、UDP 500、およびESPポートを許可することが重要です。
ASAでのACLの設定についての詳細は、『NATを使用したファイアウォール経由のIPSecトンネルの設定』を参照してください。
VPN接続は、暗号化を実行するエンドポイントデバイスの背後にあるデバイスからテストするのが理想的ですが、多くのユーザは暗号化を実行するデバイスからpingcommandを使用して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
この状況では、いずれかのルータの背後にある「内部」ネットワークからapingsを送信する必要があります。これは、クリプト ACL は、これらの送信元アドレスを持つトラフィックを暗号化するためだけに設定されているためです。
どちらのルータの外部インターフェイスからも送信されるAPは暗号化されません。特権EXECモードでpingcommandの拡張オプションを使用して、ルータの内部インターフェイスから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 = ½/4 ms
この図のルータがASAセキュリティアプライアンスに置き換えられたと仮定します。接続テストに使用するpingは、insidekeyword:
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
yourpingを使用して、セキュリティアプライアンスのInsideインターフェイスを対象とすることは推奨されません。
yourpingで内側のインターフェイスを対象とする必要がある場合は、そのインターフェイスでenablemanagement-accessを実行する必要があります。これを行っていないと、アプライアンスは応答を返しません。
securityappliance(config)#management-access inside
接続に問題がある場合、VPNのフェーズ1(1)でも機能しません。
ASAで接続が失敗した場合、SAの出力は次の例のようになります。これは、不正な暗号ピア設定や不正なISAKMPプロポーザル設定を示している可能性があります。
Router#show crypto isakmp sa 1 IKE Peer: XX.XX.XX.XX Type : L2L Role : initiator Rekey : no State : MM_WAIT_MSG2
状態はMM_WAIT_MSG2からMM_WAIT_MSG5までになる場合があり、これはメインモード(MM)での該当する状態交換の障害を示しています。
フェーズ 1 がアップするときのクリプト SA の出力は、次に示す例のようになります。
Router#show crypto isakmp sa 1 IKE Peer: XX.XX.XX.XX Type : L2L Role : initiator Rekey : no State : MM_ACTIVE
IPSec VPNトンネルが機能している兆候がない場合は、ISAKMPがイネーブルになっていない可能性があります。デバイスで ISAKMP がイネーブルになっていることを確認してください。
デバイスで ISAKMP をイネーブルにするには、次のコマンドのいずれかを使用します。
Cisco IOS®
router(config)#crypto isakmp enable
Cisco ASA(外部を任意のインターフェイスに置き換える)
securityappliance(config)#crypto isakmp enable outside
このエラーは、outside インターフェイス上で ISAKMP をイネーブルにする場合も表示されることがあります。
UDP: ERROR - socket <unknown> 62465 in used ERROR: IkeReceiverInit, unable to bind to port
このエラーの原因としては、ASAの背後にあるクライアントが、インターフェイスでisakmpを有効にする前に、UDPポート500へのPATを取得することが考えられます。PAT トランスレーションが削除(clear xlate)されると、ISAKMP をイネーブルにすることができます。
ピアとのISAKMP接続のネゴシエーション用にUDP 500および4500のポート番号が予約されていることを確認します。
ISAKMP がインターフェイスで有効になっていない場合、VPN Client は、次に示すようなエラー メッセージが表示されます。
Secure VPN connection terminated locally by client. Reason 412: The remote peer is no longer responding
このエラーを解決するには、VPN ゲートウェイのクリプト インターフェイス上で ISAKMP をイネーブルにします。
IPSec のネゴシエーションでは、Perfect Forward Secrecy(PFS; 完全転送秘密)によって、それぞれの新しい暗号鍵が以前の鍵とは独立したものであることが保証されます。
両方のトンネルピアでPFSをイネーブルまたはディセーブルにします。ディセーブルにしない場合、ASA/Cisco IOS®ルータでLAN-to-LAN(L2L)IPsecトンネルが確立されません。
Perfect Forward Secrecy(PFS; 完全転送秘密)は Cisco 独自のものであり、サード パーティ製デバイスではサポートされていません。
ASA:
PFS はデフォルトでディセーブルになっています。PFSをイネーブルにするには、グループポリシーコンフィギュレーションモードで、enableキーワードを指定してpfscommandコマンドを使用します。PFS を無効にするには、disable キーワードを指定します。
hostname(config-group-policy)#pfs {enable | disable}
設定からPFSアトリビュートを削除するには、このコマンドのno形式を入力します。
グループ ポリシーでは PFS に関する値を他のグループ ポリシーから継承できます。値を転送しないようにするには、このコマンドのno形式を使用します。
hostname(config-group-policy)#no pfs
Cisco IOS®ルータ:
このクリプトマップエントリに対して新しいセキュリティアソシエーションが要求された場合に、IPSecでPFSを要求するように指定するには、クリプトマップ設定モードでset pfscommandを使用します。
新しいセキュリティアソシエーションに対する要求を受信するときにIPSecでPFSが必要であることを指定するには、クリプトマップ設定モードでset pfscommandを使用します。
IPSec で PFS を要求しないようにするには、このコマンドの no 形式を入力します。デフォルトでは、PFS は要求されません。このコマンドでグループを指定しない場合は、デフォルトで group1 が使用されます。
set pfs [group1 | group2] no set pfs
set pfs コマンドについて:
group1 - 新しい Diffie-Hellman 交換が実行される際に IPSec で 768 ビットの Diffie-Hellman プライム モジュラス グループを使用する必要があることを指定します
group2 - 新しい Diffie-Hellman 交換が実行される際に IPSec で 1024 ビットの Diffie-Hellman プライム モジュラス グループを使用する必要があることを指定します。
以下に例を挙げます。
Router(config)#crypto map map 10 ipsec-isakmp Router(config-crypto-map)#set pfs group2
このエラーメッセージがCisco 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)のセキュリティ アソシエーション(SA)をクリアすることです。
SA をクリアすれば、さまざまなエラー メッセージや不審な動作をトラブルシューティングすることなく高い頻度で解決できます。
このテクニックはあらゆる状況で容易に使用できます。また、現在の IPSec VPN の設定を変更したり、内容を追加したりした後には、ほとんどの場合 SA をクリアする必要があります。
さらに、特定のセキュリティ アソシエーションだけをクリアすることができますが、デバイス上の SA 全体をクリアする方が大きなメリットがあります。
セキュリティ アソシエーションをクリアしたら、トンネルにトラフィックを送信して、セキュリティ アソシエーションを再確立する必要があります。
警告:クリアするセキュリティアソシエーションを指定しない限り、ここで説明するコマンドを使用すると、デバイス上のすべてのセキュリティアソシエーションをクリアできます。他の IPSec VPN トンネルを使用している場合は、操作に注意してください。
クリアする前に、対象とするセキュリティ アソシエーションを確認します。
Cisco Cisco IOS®
router#show crypto isakmp sa router#show crypto ipsec sa
Cisco ASAセキュリティアプライアンス
securityappliance#show crypto isakmp sa securityappliance#show crypto ipsec sa
セキュリティ アソシエーションをクリアします。各コマンドは太字で示した部分のみで入力するか、もしくはさらにオプションを付けて入力することができます。
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 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>
L2L トンネルを使用しているときに通信が頻繁に切断される場合は、ISAKMP SA に設定されているライフタイムが短いことが問題である可能性があります。
ISAKMPライフタイムに何らかの不一致が発生すると、「%ASA-5-713092: Group = x.x.x.x, IP = x.x.x.x, Failure during phase 1 rekey attempt due to collisionerror」というメッセージが/ASAで表示されます。
デフォルトは 86,400 秒、つまり 24 時間です。一般的な規則として、ライフタイムが短いほど、ISAKMP ネゴシエーションが(ある程度までは)安全になるとされていますが、ライフタイムが短いと、セキュリティ アプライアンスが IPSec SA を作成する回数が多くなります。
一致したとの判断は、2 つのピアの両方のポリシーで同じ暗号、ハッシュ、認証、Diffie-Hellman パラメータ値が設定されている場合、および、リモート ピアのポリシーにおいて、比較するポリシーで指定されているライフタイムと同じかそれ以下のライフタイムが指定されている場合になされます。
ライフタイムが同一でない場合、リモート ピアのポリシーにより、短い方のライフタイムが使用されます。一致の条件が満たされない場合、IKE はネゴシエーションを拒否し、IKE SA は確立されません。
SA のライフタイムを指定します。この例では、4 時間(14,400 秒)のライフタイムを設定しています。デフォルトは 86,400 秒、つまり 24 時間です。
ASA
hostname(config)#isakmp policy 2 lifetime 14400
Cisco IOS®ルータ
R2(config)#crypto isakmp policy 10 R2(config-isakmp)#lifetime 86400
設定されている最大のライフタイムを超えた場合は、VPN 接続の終端時に、次のメッセージを受け取ります。
Secure VPN Connection terminated locally by the Client.理由426:設定された最長ライフタイムを超過しました。
このエラーメッセージを解決するには、IKEセキュリティアソシエーションのライフタイムを無限大に設定するために、fetimetimevalueをゼロ(0)に設定します。VPNは常に接続され、終端しません。
hostname(config)#isakmp policy 2 lifetime 0
また、group-policyでre-xauthを無効にして問題を解決することもできます。
ISAKMP キープアライブを設定すると、LAN-to-LAN またはリモート アクセス VPN が散発的にドロップするのを防ぐのに役立ちます。これには、VPN クライアント、トンネル、非アクティブになった後にドロップされるトンネルが含まれます。
この機能によって、トンネルのエンドポイントではリモート ピアが継続的に存在することが監視され、自身の存在がそのピアに報告されます。
ピアからの応答がなくなると、エンドポイントは接続を解除します。
ISAKMP キープアライブが動作するためには、両側の VPN エンドポイントでこの機能がサポートされている必要があります。
次のコマンドを使用して、Cisco IOS®でISAKMPキープアライブを設定します。
router(config)#crypto isakmp keepalive 15
ASAセキュリティアプライアンスでISAKMPキープアライブを設定するには、次のコマンドを使用します。
トンネルグループのCisco ASAの名前: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 ASA(トンネルグループ名10.165.205.222)
IKEキープアライブ処理を無効にします。デフォルトでは有効になっています。
securityappliance(config)#tunnel-group 10.165.205.222 ipsec-attributes securityappliance(config-tunnel-ipsec)#isakmp keepalive disable
Cisco VPN Client 4.x のキープアライブを無効にする
問題が検出されたクライアントPCで%System Root% > Program Files > Cisco Systems > VPN Client > Profilesffの順に移動し、IKEキープアライブをディセーブルにします。PCFファイルの接続を必要に応じて編集します。
ForceKeepAlives=0(デフォルト)をForceKeepAlives=1に変更します。
キープアライブは Cisco 独自のものであり、サード パーティ製デバイスによってサポートされていません。
多くの場合、IPSec VPNトンネルが機能しない場合、単純な入力エラーが原因である可能性があります。たとえば、セキュリティ アプライアンスでは、事前共有キーは入力されると非表示になります。
このため、キーが誤っていることがわかりません。各 VPN エンドポイントについて、事前共有鍵が正しく入力されていることを確認してください。
キーが正しいことを確認するには、キーを再入力します。これは詳細なトラブルシューティングを避けるのに役立つ簡単な手段です。
リモート アクセス VPN では、CiscoVPN クライアントに有効なグループ名や事前共有キーが入力されていることを確認します。
このエラーは、グループ名または事前共有キーがVPN Clientとヘッドエンドデバイス間で一致しない場合に発生する可能性があります。
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... possibly 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)
警告:暗号関連のコマンドを削除すると、1つあるいはすべてのVPNトンネルがダウンする可能性があります。これらのコマンドは慎重に使用し、暗号化関連のコマンドを削除する前に組織の変更管理ポリシーを参照してください。
Cisco IOS®でピア10.0.0.1またはgroupvpngroupinに対する事前共有キーのsecretkeyinを削除および再入力するには、次のコマンドを使用します。
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
/ASAセキュリティアプライアンスでピア10.0.0.1に対する事前共有キーのsecretkeyを削除および再入力するには、次のコマンドを使用します。
シスコ6.x
(config)#no isakmp key secretkey address 10.0.0.1 (config)#isakmp key secretkey address 10.0.0.1
Cisco /ASA 7.x以降
securityappliance(config)#tunnel-group 10.0.0.1 ipsec-attributes securityappliance(config-tunnel-ipsec)#no ikev1 pre-shared-key securityappliance(config-tunnel-ipsec)# ikev1 pre-shared-key secretkey
VPN トンネルの起動が切断されます。この問題は、フェーズIネゴシエーション中の事前共有鍵の不一致が原因で発生します。
show crypto isakmp コマンドのMM_WAIT_MSG_6メッセージは、次の例で示すように事前共有鍵の不一致を示しています。
ASA#show crypto isakmp sa Active SA: 1 Rekey SA: 0 (A tunnel reports 1 Active and 1 Rekey SA during rekey) Total IKE SA: 1 1 IKE Peer: 10.7.13.20 Type : L2L Role : initiator Rekey : no State : MM_WAIT_MSG_6
この問題を解決するには、両方のアプライアンスで事前共有キーを再入力します。事前共有キーは、一意で一致している必要があります。詳細は、「事前共有キーを再入力するか元に戻す」を参照してください。
セキュリティアソシエーションをクリアしても、IPSec VPNの問題が解決されない場合、VPNトンネルの散発的なドロップおよび一部のVPNサイトの起動エラーを含む広範囲な問題を解決するために、関連するクリプトマップを削除してから再適用します。
警告:インターフェイスからクリプトマップを削除すると、そのクリプトマップに関連付けられているすべてのIPSecトンネルが必ずダウンします。慎重にこれらの手順を進め、続行する前に組織の変更管理ポリシーを検討してください。
Cisco IOS®でクリプトマップの削除と置き換えを行うには、次のコマンドを使用します。
まず、インターフェイスからクリプト マップを削除します。crypto mapcommandのno形式を使用します。
router(config-if)#no crypto map mymap
引き続きenoformを使用して暗号化マップ全体を削除します。
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
ASAでクリプトマップの削除と置き換えを行うには、次のコマンドを使用します。
まず、インターフェイスからクリプト マップを削除します。crypto mapcommandのno形式を使用します。
securityappliance(config)#no crypto map mymap interface outside
引き続きenoformを使用して他の暗号マップコマンドを削除します。
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 アドレスが変わった場合の接続の問題も解決されます。
syssopt connection permit-ipsecandsysopt connection permit-vpnallowコマンドは、IPSecトンネルからのパケットとそのペイロードに関して、セキュリティアプライアンスのインターフェイスACLをバイパスさせます。
セキュリティ アプライアンスで終端される IPSec トンネルでは、これらのコマンドのどちらかがイネーブルになっていないと失敗する確立が高くなります。
セキュリティアプライアンスソフトウェアバージョン7.0以前では、この状況に関連するsysoptコマンドはissysopt connection permit-ipsecです。
セキュリティアプライアンスソフトウェアバージョン7.1(1)以降では、この状況に関連するsysoptコマンドはissysopt connection permit-vpnです。
6.xでは、この機能はデフォルトで無効になっています。/ASA 7.0(1)以降では、この機能はデフォルトで有効になっています。次のshowコマンドを使用して、使用しているデバイスで対応するsysoptcommandが有効になっているかどうかを確認します。
Cisco ASA
securityappliance# show running-config all 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 is enabled !--- This device is running 7.2(2)
デバイスのcorrectsysoptcommandを有効にするには、次のコマンドを使用します。
Cisco ASA
securityappliance(config)#sysopt connection permit-vpn
sysopt connectioncommandを使用しない場合は、発信元から宛先への必要な対象トラフィックを明示的に許可します。
たとえば、リモートデバイスのリモートからローカルLAN、およびリモートデバイスの外部インターフェイスからローカルデバイスの外部インターフェイスへの「UDPポート500」は、外部ACLで指定します。
IKEネゴシエーションの中でIPSec VPNトンネルの確立に失敗した場合は、ピアがそのピアの識別情報を認識できなかったか、認識できなかったことが原因である可能性があります。
2 つのピアで IPSec セキュリティ アプライアンスの確立に IKE を使用している場合は、各ピアがリモート ピアに対して自身の ISAKMP 識別情報を送信します。
ピアは保持している ISAKMP 識別情報に応じて、自身の IP アドレスまたはホスト名を送信します。
デフォルトでは、ファイアウォールユニットのISAKMP IDはIPアドレスに設定されます。
一般的な規則としては、IKE ネゴシエーションの失敗を回避するために、セキュリティ アプライアンスとその相手ピアの識別情報を同じ方式で設定します。
ピアに送信されるようにフェーズ2 IDを設定するには、グローバルコンフィギュレーションモードでisakmp identitycommandを使用します。
crypto isakmp identity address !--- If the RA or L2L (site-to-site) VPN tunnels connect !--- with pre-shared key as authentication type
または
crypto isakmp identity auto !--- If the RA or L2L (site-to-site) VPN tunnels connect !--- with ISAKMP negotiation by connection type; IP address for !--- preshared key or cert DN for certificate authentication.
または
crypto isakmp identity hostname !--- Uses the fully-qualified domain name of !--- the host exchange ISAKMP identity information (default). !--- This name comprises the hostname and the domain name.
ASA設定移行ツールを使用して設定をASAに移行した後、VPNトンネルが起動せず、次のメッセージがログに表示されます。
[IKEv1]:グループ= x.x.x.x、IP = x.x.x.x、古いPeerTblEntryが見つかりました、削除します!
[IKEv1]:グループ= x.x.x.x、IP = x.x.x.x、相関テーブルからのピアの削除に失敗しました。一致しませんでした。
[IKEv1]:グループ= x.x.x.x、IP = x.x.x.x、construct_ipsec_delete():フェーズ2 SAを識別するSPIがありません!
[IKEv1]:グループ= x.x.x.x、IP = x.x.x.x、相関テーブルからのピアの削除に失敗しました。一致しませんでした。
アイドル タイムアウトが 30 分(デフォルト)に設定されている場合、これは 30 分間にわたってトンネルを通過するトラフィックがなかった場合にトンネルがドロップされることを意味します。
VPNクライアントは、アイドルタイムアウトパラメータにかかわらず30分後に接続解除され、PEER_DELETE-IKE_DELETE_UNSPECIFIEDエラーが発生します。
サードパーティ製デバイスを使用してもトンネルがドロップされないように、トンネルをalwaysup状態にするように、idle timeoutandsession timeoutasnoneeを設定します。
ASA
ユーザのタイムアウト期間を設定するには、次のように、グループポリシーコンフィギュレーションモードかユーザ名コンフィギュレーションモードで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
tunnel-allが設定されている場合は、(tunnel-allが設定されているため)VPNアイドルタイムアウトが設定されていても、すべてのトラフィックがトンネルを通過してしまって動作しないので、idle-timeoutを設定する必要はありません。
したがって、対象トラフィック(またはPCによって生成されるトラフィック)は対象トラフィックであり、アイドルタイムアウトが動作することはありません。
Cisco IOS®ルータ
IPSec SAアイドルタイマーを設定するには、グローバルコンフィギュレーションモードかクリプトマップ設定モードでcrypto ipsec security-association idle-timecommandコマンドを使用します。
デフォルトでは、IPSec SA アイドル タイマーはディセーブルになっています。
crypto ipsec security-association idle-time seconds
時間は秒単位で測定され、このアイドルタイマーにより非アクティブなピアでSAが維持できます。引数 seconds の有効な値の範囲は 60 から 86400 です。
通常の IPSec VPN 設定では 2 つのアクセス リストを使用します。一方のアクセス リストは、VPN トンネルに宛てられたトラフィックを NAT プロセスから除外するために使われます。
もう1つのアクセスリストは、暗号化するトラフィックを定義します。これには、LAN-to-LANセットアップの暗号化ACLまたはリモートアクセス設定のスプリットトンネルACLが含まれます。
これらのACLが誤って設定されていたり、存在しなかったりすると、トラフィックがVPNトンネルを一方向に流れたり、トンネルにまったく送信されなかったりする可能性があります。
グローバルコンフィギュレーションモードで、crypto map match addressコマンドを使用して、クリプトACLをクリプトマップに確実にバインドします。
IPSec VPN 設定に必要なすべてのアクセス リストが設定済みであること、およびそれらのアクセス リストでトラフィックが正しく定義されていることを確認してください。
このリストには、IPSec VPN の問題の原因が ACL にあることが疑われる場合に確認する単純な項目が含まれています。
NAT 除外 ACL とクリプト ACL でトラフィックが正しく指定されていることを確認します。
複数の VPN トンネルと複数の暗号化 ACL がある場合は、それらの ACL が重複していないことを確認します。
使用しているデバイスで、NAT 除外 ACL を使用するように設定されていることを確認します。ルータの場合、これはroute-mapcommandを使用することを意味します。
ASAの場合、これはnat (0)コマンドを使用することを意味します。NAT 免除 ACL は、LAN-to-LAN 設定とリモート アクセス設定の両方に必要です。
この例では、Cisco IOS®ルータで192.168.100.0 /24と192.168.200.0 /24または192.168.1.0 /24との間で送信されるトラフィックをNAT処理から除外するよう設定しています。他を宛先とするトラフィックは、NAT オーバーロードの対象となります。
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
下記の例(access-list noNAT)に示されているように、NAT 免除 ACL が機能するのは IP アドレスや IP ネットワークでだけで、クリプト マップ ACL に一致している必要があります。
NAT免除ACLは、ポート番号(23、25など)では機能しません。
ネットワーク間の音声コールがVPN経由で通信されるVOIP環境では、NAT 0 ACLが正しく設定されていないと、音声コールが機能しません。
問題はNAT免除ACLの誤設定にある可能性があるため、トラブルシューティングの前にVPN接続のステータスを確認することをお勧めします。
NAT 免除(nat 0)ACL に誤設定があると、下記のエラー メッセージを受け取る場合があります。
%ASA-3-305005: No translation group found for udp src Outside:x.x.x.x/p dst Inside:y.y.y.y/p
誤った例:
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がotherをmmirroreachする必要があることを意味します。この例では、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
ここでは説明していませんが、同じ概念がASAセキュリティアプライアンスにも適用されます。
ASAでは、リモートアクセス設定のためのスプリットトンネルACLは、VPNクライアントがアクセスする必要のあるネットワークへのトラフィックを許可するアクセスリストである必要があります。
Cisco IOS®ルータは、スプリットトンネルに拡張ACLを使用できます。拡張アクセスリストにおいて、スプリットトンネル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 ASA
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
サイト間 VPN トンネル用の ASA バージョン 8.3 の NAT 免除の設定:
サイト間VPNは、バージョン8.3の両方のASAを使用してHOASAとBOASAの間に確立する必要があります。HOASA での NAT 免除設定は次のようになります。
object network obj-local subnet 192.168.100.0 255.255.255.0 object network obj-remote subnet 192.168.200.0 255.255.255.0 nat (inside,outside) 1 source static obj-local obj-local destination static obj-remote objremote
IPSec トンネルがアップになっていない場合は、リモート ピアとの間で ISAKMP ポリシーが一致しているかどうか確認してください。この ISAKMP ポリシーは、サイト間(L2L)とリモート アクセス IPSec VPN の両方に適用されます。
Cisco VPN Clientまたはサイト間VPNがリモートエンドデバイスとのトンネルを確立できない場合、2つのピアに同じ暗号化、ハッシュ、認証、およびDiffie-Hellman(DH)パラメータ値が含まれていることを確認します。
リモートピアポリシーで、イニシエータが送信したポリシーのライフタイム以下のライフタイムが指定されていることを確認します。
ライフタイムが同じでない場合、セキュリティ アプライアンスでは短い方のライフタイムが使用されます。一致の条件が満たされない場合、ISAKMP はネゴシエーションを拒否し、SA は確立されません。
"Error: Unable to remove Peer TblEntry, Removing peer from peer table failed, no match!"
次に詳細ログ メッセージを示します。
4|Mar 24 2010 10:21:50|713903: IP = X.X.X.X, Error: Unable to remove PeerTblEntry 3|Mar 24 2010 10:21:50|713902: IP = X.X.X.X, Removing peer from peer table failed, no match! 3|Mar 24 2010 10:21:50|713048: IP = X.X.X.X, Error processing payload: Payload ID: 1 4|Mar 24 2010 10:21:49|713903: IP = X.X.X.X, Information Exchange processing failed 5|Mar 24 2010 10:21:49|713904: IP = X.X.X.X, Received an un-encrypted NO_PROPOSAL_CHOSEN notify message, drop
このメッセージは通常、ISAKMPポリシーの不一致やNAT 0文の欠落が原因で表示されます。
また、次のメッセージも表示されます。
Error Message %ASA-6-713219: Queueing KEY-ACQUIRE messages to be processed when P1 SA is complete.
このメッセージは、フェーズ1の完了後にフェーズ2のメッセージがキューに入っていることを示しています。このエラーメッセージは、次のいずれかの理由が原因で表示されます。
いずれかのピア上でフェーズが一致していない
ACLはフェーズ1の完了からピアをブロックする
このメッセージは通常、エラーメッセージ「Removing peer from peer table failed, no match!」の後に表示されます。
Cisco VPN Client がヘッドエンド デバイスに接続できない場合、ISAKMP ポリシーのミスマッチが問題である可能性があります。ヘッドエンドデバイスは、Cisco VPN ClientのIKEプロポーザルのいずれかに一致している必要があります。
ISAKMPポリシーとASAで使用されているIPsecトランスフォームセットに関して、Cisco VPN ClientではDESとSHAを組み合わせたポリシーは使用できません。
DES を使用している場合は、ハッシュ アルゴリズムに MD5 を使用する必要があります。または、3DES と SHA、および 3DES と MD5 といった他の組み合わせも使用できます。
ルータや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 経由するルートとして認識している必要があります。ルータ 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
ルータAを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 に記載されているすべてのリモート ネットワークのルーティング テーブルのルートをインポートします。
たとえば、暗号化マップ用 ACL とルータ A の暗号化マップは次のようになります。
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
ルータAをah 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 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ポリシーとASAで使用されているIPsecトランスフォームセットに関して、Cisco VPN Clientでは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 ciscothe
クリプト マップ名では大文字と小文字が区別されます。
このエラーメッセージは、ダイナミック暗号manシーケンスが正しくないため、ピアが誤った暗号マップをヒットしたときにも表示されます。
これは、対象トラフィックを定義するクリプトアクセスリストの不一致によっても発生します。%ASA-3-713042: IKE Initiator unable to find policy:
複数のVPNトンネルを同じインターフェイスで終端するシナリオでは、シーケンス番号が異なる同じ名前のクリプトマップ(インターフェイスごとに1つのクリプトマップだけが許可される)を作成します。
このことは、ルータとASAにも当てはまります。
同様に、L2LとリモートアクセスVPNの両方のシナリオでのクリプトマップ設定についての詳細は、『ASA:既存のL2L VPNへの新しいトンネルまたはリモートアクセスの追加:シスコ』を参照してください。
IPsecの接続固有レコードのデータベースを作成および管理します。
ASAセキュリティアプライアンスLAN-to-LAN(L2L)IPsec VPN設定の場合、tunnel-group <name> type ipsec-l2コマンドで、トンネルグループの<name>をリモートピアのIPアドレス(リモートトンネルエンド)として指定します。
ピアのIPアドレスはintunnel groupコマンドとCrypto map setのaddresscommandsに一致している必要があります。
ASDM で VPN を設定する際には、トンネル グループ名は正しいピアの IP アドレスで自動的に生成されます。
ピアのIPアドレスの設定が正しくないと、ログに次のメッセージが含まれる場合があります。その場合は、ピアのIPアドレスを正しく設定すると、解決できます。
[IKEv1]: Group = DefaultL2LGroup, IP = x.x.x.x, ERROR, had problems decrypting packet, probably due to mismatched pre-shared key. Aborting
ピアのIPアドレスがASA暗号設定で正しく設定されていない場合、ASAはVPNトンネルを確立できず、MM_WAIT_MSG4段階だけでハングします。
この問題を解決するには、設定でピアの IP アドレスを修正します。
VPNトンネルがMM_WAIT_MSG4状態でハングする場合のshow crypto isakmp コマンドの出力を次に示します。
hostname#show crypto isakmp sa 1 IKE Peer: XX.XX.XX.XX Type : L2L Role : initiator Rekey : no State : MM_WAIT_MSG4
%ASA-3-713206: Tunnel Rejected: Conflicting protocols specified by tunnel-group and group-policy
このメッセージは、グループ ポリシーで指定されている許可済みトンネルがトンネルグループ設定内の許可済みトンネルと異なっていることが原因でトンネルが廃棄されている場合に表示されます。
group-policy hf_group_policy attributes vpn-tunnel-protocol l2tp-ipsec username hfremote attributes vpn-tunnel-protocol l2tp-ipsec Both lines read: vpn-tunnel-protocol ipsec l2tp-ipsec
デフォルト グループ ポリシー内の既存のプロトコルに対して、デフォルト グループ ポリシー内の IPSec を有効にします。
group-policy DfltGrpPolicy attributes vpn-tunnel-protocol L2TP-IPSec IPSec webvpn
LAN-to-LANトンネルとリモートアクセスVPNが同じクリプトマップに設定されていると、LAN-to-LANピアにXAUTH情報の入力を求めるメッセージが表示され、show crypto isakmp コマンドの出力の「CONF_XAUTH」でLAN-to-LANトンネルに障害が発生します。
SA の出力の例を次に示します。
Router#show crypto isakmp sa IPv4 Crypto ISAKMP SA dst src state conn-id slot status X.X.X.X Y.Y.Y.Y CONF_XAUTH 10223 0 ACTIVE X.X.X.X Z.Z.Z.Z CONF_XAUTH 10197 0 ACTIVE
この問題はCisco IOS®にのみ該当しますが、ASAはトンネルグループを使用するため、この問題の影響を受けません。
isakmpキーを入力する際にeno-xauthkeywordを使用すると、デバイスからピアに対してXAUTH情報(ユーザ名とパスワード)の入力を求められなくなります。
このキーワードによって、スタティックな IPSec ピアに対する XAUTH がディセーブルになります。同じクリプト マップで、L2L と RA VPN の両方が設定されているデバイスで、これと同様のコマンドを入力します。
router(config)#crypto isakmp key cisco123 address 172.22.1.164 no-xauth
ASAがEasy VPNサーバとして動作するシナリオでは、Xauthの問題が原因でEasy VPNクライアントがヘッドエンドに接続できません。
次に示すように、問題を解決するには、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-authenticationcommandコマンドについての詳細は、このドキュメントの「Miscellaneous」のセクションを参照してください。
VPN プールに割り当てられている IP アドレスの範囲が不十分の場合、次の 2 つの方法で IP アドレスのアベイラビリティを拡張できます。
既存の範囲を削除し、新しい範囲を定義します。ランダム データの例は次のとおりです。
CiscoASA(config)#no ip local pool testvpnpool 10.76.41.1-10.76.41.254 CiscoASA(config)#ip local pool testvpnpool 10.76.41.1-10.76.42.254
隣接していないサブネットをVPNプールに追加する場合は、2つの別個のVPNプールを定義し、「tunnel-group attributes」の下に順番に指定できます。ランダム データの例は次のとおりです。
CiscoASA(config)#ip local pool testvpnpoolAB 10.76.41.1-10.76.42.254 CiscoASA(config)#ip local pool testvpnpoolCD 10.76.45.1-10.76.45.254 CiscoASA(config)#tunnel-group test type remote-access CiscoASA(config)#tunnel-group test general-attributes CiscoASA(config-tunnel-general)#address-pool (inside) testvpnpoolAB testvpnpoolCD CiscoASA(config-tunnel-general)#exit
ユーザがプールを指定する順序は、ASA がこれらのプールから、このコマンドでプールが表示される順序でアドレスを割り当てるため非常に重要です。
グループ ポリシーの address-pools コマンドによるアドレス プール設定は、トンネル グループの address-pool コマンドによるローカル プール設定を上書きします。
VPN接続で遅延の問題がある場合は、次の条件を確認して問題を解決します。
パケットの MSS をさらに削減できるかどうかを確認します。
IPsec/udpの代わりにIPsec/tcpが使用されている場合は、configurepreserve-vpn-flowを設定します。
Cisco ASA をリロードします。
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
X-auth が Radius サーバで使用されていると、Cisco VPN Client では認証ができません。
まず、認証が正しく動作していることを確認します。問題を絞り込むには、最初に ASA のローカル データベースによる認証を確認します。
tunnel-group tggroup general-attributes authentication-server-group none authentication-server-group LOCAL exit
これが正常に動作する場合、問題はRADIUSサーバの設定に関連しています。
ASA から Radius サーバの接続を確認します。ping が正常に動作する場合は、ASA の Radius 関連の設定と Radius サーバのデータベース設定を確認します。
radiusに関する問題のトラブルシューティングを行うには、debug radiusコマンドを使用できます。sampledebug radiusoutputの例については、次の出力例を参照してください。
ASAでdebugcommandを使用する前に、「警告メッセージ」を参照してください。
Cisco VPN ClientユーザがヘッドエンドVPNデバイスとの接続を試みると、このエラーが発生します。
VPNクライアントが最初の試行時に頻繁に接続をドロップする
セキュリティVPN接続がピアによって終了されました。Reason 433.
Secure VPN Connection terminated by Peer Reason 433:(Reason Not Specified by Peer)(セキュアVPN接続がピアによって終了しました:理由がピアによって指定されていません)
ネットワークまたはブロードキャストIPアドレスの割り当てを試みましたが、プールから(x.x.x.x)を削除しました。
問題は、ASA、RADIUSサーバ、DHCPサーバ、またはDHCPサーバとして機能するRADIUSサーバを介したIPプールの割り当てによって発生する可能性があります。
debug暗号化コマンドを使用して、ネットマスクおよびIPアドレスが正しいことを確認します。また、ネットワーク アドレスおよびブロードキャスト アドレスがプールに含まれていないことも確認します。
また、Radius サーバは、適切な IP アドレスをクライアントに割り当てることができなければなりません。
この問題は、拡張認証の失敗によっても発生します。このエラーを修復するには、AAA サーバを確認する必要があります。
サーバとクライアントのサーバ認証パスワードを確認します。AAAサーバをリロードすると、この問題を解決できます。
この問題のもう一つの回避策は、脅威検出機能をディセーブルにすることです。
異なる不完全なセキュリティアソシエーション(SA)に対する複数の再送信が存在する場合、脅威検出機能が有効になっているASAはスキャン攻撃が発生したと見なし、VPNポートが主な攻撃者としてマークされます。
これにより ASA の処理で大量のオーバーヘッドが発生する可能性があるため、脅威検出機能をディセーブルにしてください。脅威検出をディセーブルにするには、次のコマンドを使用します。
no threat-detection basic-threat no threat-detection scanning-threat shun no threat-detection statistics no threat-detection rate
これは、実際の問題を修正できるかどうかを確認する回避策として使用できます。
Cisco ASAで脅威検出を無効にすると、スキャンの試行、無効なSPIを使用したDoS、アプリケーションインスペクションに失敗したパケット、不完全なセッションなど、いくつかのセキュリティ機能が実際に損なわれることを確認してください。
この問題は、トランスフォーム セットが正しく設定されていない場合にも発生します。この問題を解決するには、トランスフォーム セットを正しく設定します。
リモート アクセス ユーザが VPN にアクセスすると、インターネットにアクセスできなくなる。
リモート アクセス ユーザが同じデバイス上の他の VPN の背後にあるリソースにアクセスできない。
リモート アクセス ユーザがローカル ネットワークにしかアクセスできない。
この問題を解決するには、次の解決策を試してください。
VPNクライアントがVPNヘッドエンドデバイス(ASA/Cisco IOS®ルータ)との間にIPSecトンネルを確立すると、VPNクライアントユーザは内部ネットワーク(10.10.10.0/24)のリソースにはアクセスできますが、DMZネットワーク(10.1.1.0/24)にはアクセスできなくなります。
図
DMZ ネットワークのリソースにアクセスするために、スプリット トンネル、NO NAT 設定がヘッドエンド デバイスに追加されていることを確認してください。
以下に例を挙げます。
ASA の設定
次の設定は、DMZ ネットワークの NAT 免除を設定して、VPN ユーザが DMZ ネットワークにアクセスできるようにする方法を示します。
object network obj-dmz subnet 10.1.1.0 255.255.255.0 object network obj-vpnpool subnet 192.168.1.0 255.255.255.0 nat (inside,dmz) 1 source static obj-dmz obj-dmz destination static obj-vpnpool obj-vpnpool
NAT 設定に新しいエントリを追加した後に、NAT 変換をクリアします。
Clear xlate Clear local
次を確認します:
トンネルが確立されている場合は、Cisco VPNクライアントに移動し、Status > Route Detailsの順に選択して、DMZと内部の両方のネットワークについて、セキュリティで保護されたルートが表示されていることを確認します。
既存のL2L VPN設定に新しいVPNトンネルやリモートアクセスVPNを追加するために必要な手順については、『ASA:既存のL2L VPNへの新しいトンネルやリモートアクセスの追加:シスコ』を参照してください。
Cisco 5500シリーズ適応型セキュリティアプライアンス(ASA)にトンネリングしながら、VPN Clientにインターネットへのアクセスを許可する方法の手順については、『ASA:ASA設定例上でVPN Clientのスプリットトンネリングを許可するための』を参照してください。
トンネルが確立された後、VPN ClientがDNSを解決できない場合は、ヘッドエンドデバイス(ASA)のDNSサーバ設定が問題である可能性があります。
さらに、VPN クライアントと DNS サーバ間の接続をチェックしてください。DNSサーバの設定は、グループポリシーで設定し、tunnel-groupの一般属性のグループポリシーで適用する必要があります。次に例を示します。
!--- Create the group policy named vpn3000 and !--- specify the DNS server IP address(172.16.1.1) !--- and the domain name(cisco.com) in the group policy. group-policy vpn3000 internal group-policy vpn3000 attributes dns-server value 172.16.1.1 default-domain value cisco.com !--- Associate the group policy(vpn3000) to the tunnel group !--- with the default-group-policy. tunnel-group vpn3000 general-attributes default-group-policy vpn3000
VPN クライアントが内部サーバに名前で接続できない
VPN クライアントがリモートやヘッドエンド内部ネットワークのホストやサーバに、名前で ping を通すことができません。この問題を解決するには、ASA でスプリット DNS コンフィギュレーションをイネーブルにする必要があります。
スプリットトンネルでは、リモートアクセスIPsecクライアントが条件に応じて、パケットを暗号化された形式でIPsecトンネル経由で送信したり、暗号化を解除した後に最終的な宛先にルーティングされるクリアテキストの形式でネットワークインターフェイスに送信したりできます。
スプリットトンネルはデフォルトでディセーブルになっており、tunnelalltrafficを設定します。
split-tunnel-policy {tunnelall | tunnelspecified | excludespecified}
オプション excludespecified は、Cisco VPN Client に対してのみサポートされており、EZVPN クライアントに対してはサポートされていません。
ciscoasa(config-group-policy)#split-tunnel-policy excludespecified
スプリットトンネルの詳細な設定例については、次のドキュメントを参照してください。
この機能は、あるインターフェイスに着信した後に同じインターフェイスからルーティングされる VPN トラフィックに対して便利な機能です。
たとえば、ハブアンドスポークVPNネットワークでは、セキュリティアプライアンスがハブで、リモートVPNネットワークはスポークです。スポーク間の通信トラフィックは、セキュリティアプライアンスに着信した後、もう一方のスポークに再び発信される必要があります。
トラフィックが同じインターフェイスから発着信できるようにするには、同じ – security-traffic設定を使用します。
securityappliance(config)#same-security-traffic permit intra-interface
リモート アクセス ユーザは VPN に接続し、ローカル ネットワークにしかアクセスできません。
さらに詳細な設定例は、『ASA:VPNクライアントでローカルLANアクセスを許可するための設定例』を参照してください。
問題
トンネルを確立した後に内部ネットワークにアクセスできない場合は、VPN クライアントに割り当てている IP アドレスが、ヘッドエンド デバイスの背後にある内部ネットワークと重複していないかどうかを確認してください。
解決方法
VPNクライアント、ヘッドエンドデバイスの内部ネットワーク、およびVPNクライアントの内部ネットワークに割り当てられるプール内のIPアドレスが異なるネットワークにあることを確認します。
同一のメジャー ネットワークを別のサブネットに割り当てることはできますが、ルーティングに問題が生じる場合があります。
詳細な例については、「DMZにあるサーバにアクセスできない」の項のDiagramandExampleof the Servers inを参照してください。
ASA/に接続できるVPNクライアントは3つだけで、4つ目のクライアントへの接続は失敗します。失敗した際には、次のエラー メッセージが表示されます。
Secure VPN Connection terminated locally by the client. Reason 413: User Authentication failed.
tunnel rejected; the maximum tunnel count has been reached
ほとんどの場合、この問題はグループ ポリシー内の同時ログイン設定と最大セッション制限に関係するものです。
この問題を解決するには、次の解決策を試してください。
ASDMのInheritcheckボックスがチェックされている場合、ユーザに許可されるのはデフォルトの同時ログイン数だけです。同時ログインのデフォルト値は3です。
この問題を解決するには、同時ログイン数の値を増やします。
ASDMを起動し、Configuration > VPN > Group Policyの順に移動します。
適切なGroupgroupを選択し、Editbuttonをクリックします。
Generaltabで、Simultaneous LoginsunderConnection SettingsのInheritcheckボックスを取り消します。フィールドに適切な値を選択します。
このフィールドの最小値はゼロ(0)です。この値にすると、ログインが無効になり、ユーザアクセスができなくなります。
別のPCから同じユーザアカウントでログインすると、現在のセッション(同じユーザアカウントを持つ別のPCから確立された接続)が終了し、新しいセッションが確立されます。
これはデフォルトの動作であり、VPN の同時ログインとは関係ありません。
同時ログインの数を設定するには、次の手順を実行します。この例では、目標値として20を選択しています。
ciscoasa(config)#group-policy Bryan attributes ciscoasa(config-group-policy)#vpn-simultaneous-logins 20
このコマンドの詳細は、『Ciscoセキュリティアプライアンスコマンドリファレンス』を参照してください。
VPNセッションをセキュリティアプライアンスで許可されているよりも低い値に制限するには、グローバルコンフィギュレーションモードでvpn-sessiondb max-session-limitコマンドを使用します。
セッションの制限を解除するには、このコマンドのenoversionを使用します。現在の設定を上書きするには、このコマンドを再度使用します。
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 > Simultaneous Loginsの順に選択し、ログイン数を5に変更します。
IPSec トンネルを確立した後に、トンネル経由でアプリケーションやセッションを開始できなくなることがあります。
pingcommandコマンドを使用してネットワークを確認し、ネットワークからアプリケーションサーバに到達できるかどうかを確認します。
これは、ルータまたは/ASAデバイスを通過する一時的なパケットの最大セグメントサイズ(MSS)、特にSYNビットが設定されたTCPセグメントに関する問題である可能性があります。
次のコマンドを実行し、ルータの Outside インターフェイス(トンネル終端インターフェイス)の 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 に調整されています。
詳細は、『ASAとCisco IOS®:VPNフラグメンテーション』を参照してください。
MTU サイズ エラー メッセージと MSS の問題があるため、インターネットに正常にアクセスできなくなったり、トンネル経由での転送が遅くなります。
この問題を解決するには、次のドキュメントを参照してください。
ASAインターフェイスからVPNトンネルを開始できず、トンネルが確立された後に、リモートエンド/VPNクライアントがVPNトンネル上のASAの内部インターフェイスにpingを実行できません。
たとえば、VPNクライアントがVPNトンネル経由でASA内部インターフェイスへのSSHまたはHTTP接続を開始できないことがあります。
の内部インターフェイスは、グローバルコンフィギュレーションモードでmanagement-accesscommandが設定されていない限り、トンネルの反対側からpingを実行することはできません。
ASA-02(config)#management-access inside ASA-02(config)#show management-access management-access inside
このコマンドは、VPNトンネルを介したASAのInsideインターフェイスへのSSHの開始またはHTTP接続にも役立ちます。
この情報は、DMZ インターフェイスの場合にも当てはまります。たとえば、/ASAのDMZインターフェイスに対してpingを実行する場合や、DMZインターフェイスからトンネルを開始する場合は、management-access DMZコマンドが必要です。
ASA-02(config)#management-access DMZ
VPNクライアントが接続できない場合は、ESPおよびUDPポートが開いていることを確認します。
ただし、これらのポートが開いていない場合は、VPNクライアント接続エントリでこのポートを選択して、TCP 10000での接続を試みてください。
modify > transport tab > IPsec over TCPの順に右クリックします。
VPN トンネルにトラフィックを渡すことができません。
この問題は、ESPパケットがブロックされている場合にも発生する可能性があります。この問題を解決するには、VPNトンネルを再設定します。
この問題は、次の出力に示すように、データが暗号化されていないが、VPNトンネル経由でのみ復号化されている場合に発生する可能性があります。
ASA# sh crypto ipsec sa peer x.x.x.x peer address: y.y.y.y Crypto map tag: IPSec_map, seq num: 37, local addr: x.x.x.x access-list test permit ip host xx.xx.xx.xx host yy.yy.yy.yy local ident (addr/mask/prot/port): (xx.xx.xx.xx/255.255.255.255/0/0) remote ident (addr/mask/prot/port): (yy.yy.yy.yy/255.255.255.255/0/0) current_peer: y.y.y.y #pkts encaps: 0, #pkts encrypt: 0, #pkts digest: 0 #pkts decaps: 393, #pkts decrypt: 393, #pkts verify: 393 #pkts compressed: 0, #pkts decompressed: 0 #pkts not compressed: 0, #pkts comp failed: 0, #pkts decomp failed: 0 #pre-frag successes: 0, #pre-frag failures: 0, #fragments created: 0 #PMTUs sent: 0, #PMTUs rcvd: 0, #decapsulated frgs needing reassembly: 0 #send errors: 0, #recv errors: 0
この問題を解決するには、次の条件を確認します。
クリプト アクセス リストがリモート サイトと一致するかどうか、および NAT 0 アクセス リストが正しかどうか。
ルーティングが正しく、トラフィックが内部を通過する外部インターフェイスに到達する場合。出力例は、復号化が行われているが暗号化は発生しないことを示しています。
ASAでsimple permit connection-vpnコマンドが設定されているかどうか。設定されていない場合は、このコマンドを設定します。これは、ASAがインターフェイスACLチェックから暗号化/VPNトラフィックを除外することを許可するためです。
単一の VPN トンネルで複数のバックアップ ピアを使用する必要があります。
複数のピアの設定は、フォールバックリストのプロビジョニングと同じです。トンネルごとに、セキュリティ アプライアンスはリスト内の最初のピアとネゴシエートしようとします。
ピアが応答しない場合、セキュリティ アプライアンスはピアが応答するか、またはリストにピアがなくなるまで下に向かってリストを検索します。
ASAには、プライマリピアとして設定されているクリプトマップがあります。セカンダリ ピアは、プライマリ ピアの後に追加できます。
この設定例では、プライマリ ピアが X.X.X.X、バックアップ ピアが Y.Y.Y.Y と示されています。
ASA(config)#crypto map mymap 10 set peer X.X.X.X Y.Y.Y.Y
VPN トンネルを一時的にディセーブルにした後、該当サービスを再起動するには、このセクションで解説する手順を実行します。
グローバルコンフィギュレーションモードでcrypto map interfaceコマンドを使用し、インターフェイスに対する定義済みのクリプトマップセットを削除します。
インターフェイスからクリプトマップセットを削除するには、このコマンドのenoformを使用します。
hostname(config)#no crypto map map-name interface interface-name
このコマンドにより、任意のアクティブなセキュリティ アプライアンス インターフェイスに対するクリプト マップ セットが削除され、該当するインターフェイスで IPSec VPN トンネルが非アクティブになります。
インターフェイス上で IPSec トンネルを再起動するには、該当インターフェイスが IPSec サービスを提供できるように、該当インターフェイスにクリプト マップ セットを割り当てる必要があります。
hostname(config)#crypto map map-name interface interface-name
VPN ゲートウェイで、膨大な数のトンネルが設定されている場合、トンネルがトラフィックを渡さない場合があります。ASA は、これらのトンネルの暗号化パケットを受信しません。
この問題は、ASA がトンネルを介して暗号化パケットを渡すことができないためです。重複する暗号化ルールが ASP テーブル内に作成されます。
%ASA-5-713904: Group = DefaultRAGroup, IP = 192.0.2.0,... unsupported Transaction Mode v2 version.Tunnel terminatederrorエラーメッセージが表示されます。
Transaction Mode v2エラーメッセージが表示される理由は、ASAがIKE Mode Config V6のみをサポートしており、古いV2モードバージョンをサポートしていないためです。
このエラーを解決するには、IKE Mode Config V6 バージョンを使用してください。
%ASA-6-722036: Group < client-group > User < xxxx > IP < x.x.x.x> Transmitting large packet 1220 (threshold 1206)エラーメッセージがASAのログに出力されます。
このログの意味と解決方法を教えてください。
このログ メッセージは、大きなパケットが該当クライアントに送信されたことを示しています。該当パケットの送信元は、クライアントの MTU を意識していません。
また、圧縮不能なデータの圧縮が原因の場合もあります。この問題の回避策は、ssvc compressionコマンドを使用せずにSVC圧縮をオフにすることです。これにより、この問題は解決します。
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 check
通常、このメッセージは、トンネルの一端でQoSが実行されている場合に発生します。これは、パケットが故障していると検出された場合に発生します。
QoS をディセーブルにすると、これを止められますが、トラフィックがトンネルを通過できる限りは、これを無視することもできます。
crypto map mymap 20 ipsec-isakmpコマンドを実行すると、次のエラーが発生する場合があります。
警告:クリプトマップエントリが不完全です
例:
ciscoasa(config)#crypto map mymap 20 ipsec-isakmp WARNING: crypto map entry incomplete
これは、新しいクリプトマップを定義するときの通常のアラートです。動作するには、アクセスリスト(match address)、トランスフォームセット、ピアアドレスなどのパラメータを設定する必要があることを示しています。
クリプト マップを定義するために入力する最初の行がコンフィギュレーションに表示されないのも、正常です。
VPN トンネルを介して大きな ping パケットを渡すことができません。大きなpingパケットを渡そうとすると、「error%ASA-4-400024: IDS:2151 Large ICMP packet from to on interface outside」が表示されます。
この問題を解決するには、シグニチャ2150および2151を無効にします。シグニチャを無効にすると、pingは正常に動作します。
シグニチャをディセーブルにするには、次のコマンドを使用します。
ASA(config)#ip audit signature 2151 disable
ASA(config)#ip audit signature 2150 disable
ASA のログ メッセージで次のエラーを受け取りました。
エラー:%|ASA-4-402119: IPSEC:アンチリプレイチェックに失敗したプロトコルパケット(SPI=spi, sequence number= seq_num)をremote_IP (username)からlocal_IPに受信しました。
このエラーを解決するには、crypto ipsec security-association replay window-sizecommandコマンドを使用して、ウィンドウサイズを変更します。
hostname(config)#crypto ipsec security-association replay window-size 1024
再生防止の問題を除去するには、フルのウィンドウ サイズ 1024 を使用するよう推奨します。
インターネットに接続できないホストがほとんどなく、次のエラー メッセージが syslog に出力されます。
エラーメッセージ – %ASA-4-407001: Deny traffic for local-host interface_name:inside_address, license limit of number exceeded
このエラー メッセージは、使用中のライセンスのユーザ限度をユーザの数が超えると出力されます。このエラーは、ライセンスをより多くのユーザにアップグレードすることで解決できます。
ユーザ ライセンスに含まれるユーザ数としては、50 名、100 名、または無制限を必要に応じて選択できます。
エラーメッセージ – %VPN_HW-4-PACKET_ERROR:エラーメッセージは、ルータが受信したHMACを含むESPパケットが一致していないことを示しています。このエラーは、次の問題が原因で発生する可能性があります。
欠陥のある VPN H/W モジュール
不正な ESP パケット
このエラー メッセージを解決するには、
トラフィックの中断がない場合、エラー メッセージを無視します。
トラフィックの中断がある場合は、モジュールを交換します。
許可されたVLANをトランクポートのスイッチに追加しようとすると、このエラーメッセージが表示されます。Command rejected: delete crypto connection between VLAN XXXX and VLAN XXXX, first..
WAN エッジ トランクは、追加の VLAN を許可するように変更できません。つまり、IPSEC VPN SPAtrunkにVLANを追加できません。
このコマンドは、許可されたVLANリストに属する暗号化された接続インターフェイスVLANが生成されるため拒否されます。これにより、IPSecセキュリティ違反の可能性があります。
この動作は、すべてのトランク ポートに適用されることに注意してください。
switchport trunk allowed vlan (vlanlist)コマンドの代わりに、switchport trunk allowed vlan nonecommandまたは「switchport trunk allowed vlan (vlanlist)」コマンドを使用します。
このエラーは、VPN トンネルの終端にあるデバイスから Telnet を試みるか、ルータ自体から Telnet を試みると発生します。
エラーメッセージ – % FW-3-RESPONDER_WND_SCALE_INI_NO_SCALE: Dropped packet - Invalid Window Scale option for session x.x.x.x:27331 to x.x.x:23 [Initiator(flag 0,factor 0) Responder (flag 1, factor 2)]
ユーザ ライセンスに含まれるユーザ数としては、50 名、100 名、または無制限を必要に応じて選択できます。ウィンドウスケール機能が追加され、ロングファットネットワーク(LFN)でのデータの迅速な伝送が可能になりました。
これらは、通常、非常に大きな帯域幅ではあるが高遅延ではない接続です。
衛星通信を使用するネットワークは、衛星リンクには常に高い伝搬遅延があるが、通常は高帯域幅であるため LFN の 1 例です。
ウィンドウスケール機能でLFNをサポートするには、TCPウィンドウサイズが65,535を超える必要があります。このエラーメッセージは、TCPウィンドウサイズを65,535より大きくすれば解決できます。
VPN トンネルが起動すると、次のエラー メッセージが表示されます。
%ASA-5-305013:非対称NATルールが順方向と逆方向で一致しました(NATルールが正しくない場合)。Please update this issue flows
NATを使用するホストと同じインターフェイス上にない場合にこの問題を解決するには、実際のアドレスの代わりにマッピングされたアドレスを使用してホストに接続します。
また、アプリケーションにIPアドレスが埋め込まれている場合は、inspectコマンドを有効にします。
VPN トンネルが起動に失敗すると、次のエラー メッセージが表示されます。
%ASA-5-713068:非ルーチンNotifyメッセージを受信しました: notify_type
このメッセージは、設定ミスによって(つまり、ピア上のポリシーまたは ACL の設定が同一でない場合に)発生します。
ポリシーと ACL が一致する場合、トンネルは問題なく起動します。
Cisco 適応型セキュリティ アプライアンス(ASA)をアップグレードしようとすると、次のいずれかのエラー メッセージが表示されます。
%ASA-5-720012:(VPN-Secondary)スタンバイユニットでIPSecフェールオーバーランタイムデータを更新できませんでした。
%ASA-6-720012:(VPN-unit)スタンバイユニットでIPsecフェールオーバーランタイムデータを更新できませんでした。
このエラー メッセージは情報伝達のためのエラーです。このメッセージは、ASA または VPN の機能に影響しません。
これらのメッセージは、関連するIPsecトンネルがスタンバイユニットで削除されているために、VPNフェールオーバーサブシステムがIPsec関連のランタイムデータをアップデートできない場合に表示されます。
これを解決するには、アクティブユニットでwr standbycommandコマンドを発行します。
「%ASA-3-713063: IKE Peer address not configured for destination 0.0.0.0」エラーメッセージが表示され、トンネルが起動できません。
このメッセージは、IKE ピア アドレスが L2L トンネルに対して設定されていない場合に表示されます。
このエラーは、クリプトマップのシーケンス番号を変更してから、クリプトマップを削除して再適用すると解決できます。
%ASA-3-752006: Tunnel Manager failed to dispatch a KEY_ACQUIRE message.Probably-configuration of the crypto map or tunnel-group."エラーメッセージがCisco ASAでログに記録されます。
このエラー メッセージは、クリプト マップまたはトンネル グループの設定ミスによって発生する可能性があります。両方とも正しく設定されていることを確認します。このエラーメッセージの詳細については、エラー752006(登録ユーザ専用)を参照してください。
次に是正措置の一部を示します。
(たとえば、ダイナミック マップに関連付けられていない)クリプト ACL を削除します。
未使用の IKEv2 関連の設定があれば削除します。
クリプト ACL が正しく一致していることを確認します。
重複したアクセス リスト エントリがあれば削除します。
LAN-to-LAN VPN トンネルのセットアップでは、次のエラーが ASA の一端に表示されます。
カプセル化解除された内部パケットが、SAのネゴシエートされたポリシーと一致しない。
The packet specifies its destination as 10.32.77.67, its source as 10.105.30.1, and its protocol as icmp.
The SA specifies its local proxy as 10.32.77.67/255.255.255.255/ip/0 and its remote_proxy as 10.105.42.192/255.255.255.224/ip/0.
VPN トンネルの両端で定義されている対象トラフィックのアクセス リストを確認する必要があります。両方とも正確なミラーイメージとして一致する必要があります。
AnyConnectが接続に失敗すると、「Failed to launch 64-bit VA installer to enable the virtual adapter due to error 0xfffffflog」というメッセージが表示されます。
この問題を解決するには、次の手順を実行します。
System > Internet Communication Management > Internet Communication settingsの順に進み、Turn Off Automatic Root Certificates Updates がディセーブルになっていることを確認します。
ディセーブルになっている場合、影響を受けるマシンとテストに再度割り当てられたGPOのentireAdministrativeテンプレート部分をディセーブルにします。
詳細については、「自動ルート証明書の更新をオフにする」を参照してください。
Cisco VPN Client は Windows 7 のデータ カードでは動作しません。
Windows 7 にインストールされた Cisco VPN Client は、データ カードが Windows 7 マシンにインストールされた VPN クライアントでサポートされていないため 3G 接続では動作しません。
ASAの外部インターフェイスでisakmpを有効にしようとすると、次のアラートメッセージが表示されます。
ASA(config)# crypto isakmp enable outside WARNING, system is running low on memory. Performance may start to degrade. VPN functionality may not work at all.
この時点で、ssh を介して ASA にアクセスします。HTTPS が停止し、他の SSL クライアントにも影響を与えます。
この問題は、ロガーやクリプトなどの異なるモジュールのメモリ要件が原因です。
logging queue 0コマンドを使用していないことを確認します。これにより、キューサイズが8192に設定され、メモリ割り当てが増加します。
ASA5505やASA5510などのプラットフォームでは、このメモリ割り当てによって他のモジュールのメモリが不足する傾向があります。
次のエラー メッセージが表示されます。
%ASA-3-402130: CRYPTO: Received an ESP packet (SPI = 0xXXXXXXX, sequence number= 0xXXXX) from x.x.x.x (user= user) to y.y.y.y with incorrect IPsec padding
この問題は、IPSec VPNがハッシュアルゴリズムなしでネゴシエートするために発生します。パケットハッシュにより、ESPチャネルの整合性チェックが保証されます。
そのため、ハッシュがないと、不正なパケットはCisco ASAによって検出されずに受け入れられ、これらのパケットの復号化が試みられます。
ただし、これらのパケットは形式が正しくないため、ASAはパケットの復号化中に欠陥を検出します。この結果、パディング エラー メッセージが表示されます。
VPN のトランスフォーム セットにハッシュ アルゴリズムを組み込み、ピア間のリンクの最小パケットの変形を確保することを推奨します。
ライフタイムが 24 時間に設定されているにもかかわらず、VPN トンネルは 18 時間ごとに接続解除されます。
ライフタイムは、SAがキー再生成に使用できる最大時間です。設定でライフタイムとして入力する値は、SA の鍵再生成時間によって異なります。
そのため、現在のライフタイムが期限切れになる前に、新しい SA(IPsec の場合は SA のペア)とネゴシエートする必要があります。
鍵再生成時間は、最初の鍵再生成が失敗した場合に複数回試行できるように、常にライフタイムよりも小さい値にする必要があります。
RFC では、鍵再生成時間の計算方法は指定されていません。これは、実装者の裁量に委ねられています。
したがって、時間はプラットフォームによって異なります。一部の実装では、鍵再生成タイマーを計算するために任意の係数を使用できます。
たとえば、ASAがトンネルを開始する場合、64800秒= 86400の75 %でキー再生成を行うことは正常です。
ルータが開始する場合、ASA は、鍵再生成を開始する時間よりも長く待機する時間をピアに指定することができます。
これにより、VPN ネゴシエーションに別のキーを使用するために、VPN セッションを 18 時間ごとに接続解除することができます。これにより、VPN ドロップや VPN の問題を引き起こさないようにする必要があります。
LAN to LAN トンネルが再ネゴシエートされた後に、トラフィック フローが維持されません。
ASAは、ASAを通過するすべての接続を監視し、アプリケーションインスペクション機能に従って状態テーブルのエントリを維持します。
VPN を通過する暗号化済みトラフィックの詳細は、セキュリティ アソシエーション(SA)データベースの形式で維持されます。LAN to LAN VPN 接続では、2 つの異なるトラフィック フローが維持されます。
1 つは VPN ゲートウェイ間の暗号化されたトラフィックです。もう 1 つは VPN ゲートウェイの背後にあるネットワーク リソースと反対側の背後にあるエンド ユーザ間のトラフィック フローです。
VPN を終了すると、この特定 SA のフロー詳細は削除されます。
ただし、この TCP 接続用に ASA によって維持されていた状態テーブル エントリは、アクティビティがないために古くなり、これがダウンロードを妨害します。
つまり、ユーザアプリケーションが終了しても、ASAはその特定のフローのTCP接続を保持します。
ただし、TCPアイドルタイマーが時間切れになると、TCP接続はstray状態になり、最終的にはタイムアウトになります。
この問題は、Persistent IPSec Tunneled Flowsと呼ばれる機能の導入で解決されています。
VPN トンネルの再ネゴシエーション時の状態テーブル情報を保持するために、新しいコマンド、sysopt connection preserve-vpn-flows、が Cisco ASA に統合されました。
デフォルトでは、このコマンドはディセーブルです。これを可能にするために、L2L VPNが中断から回復してトンネルを再確立するときに、Cisco ASAはTCP状態テーブル情報を維持します。
次のエラー メッセージが 2900 シリーズ ルータで受信されます。
エラー: 3月20日10:51:29: %CERM-4-TX_BW_LIMIT: securityk9テクノロジーパッケージライセンスを使用する暗号化機能のTx帯域幅の上限である85000 Kbpsに達しました。
これは、米国政府によって発行された厳格なガイドラインのために発生する既知の問題です。
これに従って、securityk9ライセンスでは、90 Mbpsに近いレートまでペイロードの暗号化を許可し、デバイスへの暗号化されたトンネル/TLSセッションの数を制限することしかできません。
暗号化の輸出制限に関する詳細は、『Cisco ISR G2 SEC and HSEC Licensing』を参照してください。
シスコ デバイスの場合、双方向合計 170 Mbps の ISR G2 ルータの着信または発信の 85Mbps 単方向トラフィック未満で取得されます。
この要件は Cisco 1900、2900、3900 ISR G2 プラットフォームに適用されます。このコマンドは、次の制限を表示するのに役立ちます。
Router#show platform cerm-information Crypto Export Restrictions Manager(CERM) Information: CERM functionality: ENABLED ---------------------------------------------------------------- Resource Maximum Limit Available ---------------------------------------------------------------- Tx Bandwidth(in kbps) 85000 85000 Rx Bandwidth(in kbps) 85000 85000 Number of tunnels 225 225 Number of TLS sessions 1000 1000 ---Output truncated----
この問題を回避するには、HSECK9ライセンスを購入します。hseck9 機能ライセンスでは、ペイロード暗号化機能が拡張され、VPN トンネル数とセキュアな音声セッション数が増加します。
Cisco ISRルータライセンスの詳細については、『ソフトウェアアクティベーション』を参照してください。
この問題は、複数の鍵再生成後の IPSec 接続で見られますが、この問題を引き起こす条件は明確ではありません。
この問題の存在は、theshow asp dropcommandの出力を調べて、Expired VPN contextカウンタが発信パケットごとに増加することを確認することで確立できます。
トンネルが始動されないと、show crypto isakmp コマンドおよびindebugoutputの出力にもAG_INIT_EXCHmessageが表示されます。
この理由は、isakmpポリシーの不一致か、またはポートudp 500が途中でブロックされることが原因である可能性があります。
このメッセージは情報提供のためのものであり、VPN トンネルの接続解除に対応するものではありません。
改定 | 発行日 | コメント |
---|---|---|
1.0 |
31-Mar-2014 |
初版 |