このドキュメントでは、復号化がイネーブルにされた Cisco Next-Generation Firewall(NGFW)のサービス モジュールを使用して、HTTPS ベースの Web サイトにアクセスする場合の特定の問題のトラブルシューティングを行う方法について説明します。
次の項目に関する知識があることが推奨されます。
このドキュメントの情報は、Cisco Prime Security Manager(PRSM)バージョン 9.2.1.2(52) の Cisco NGFW サービス モジュールに基づいています。
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されたものです。 このドキュメントで使用するすべてのデバイスは、クリアな(デフォルト)設定で作業を開始しています。 ネットワークが稼働中の場合は、コマンドが及ぼす潜在的な影響を十分に理解しておく必要があります。
復号化は、NGFW サービス モジュールが SSL 暗号化されたフローを復号化し(他の方法で暗号化された対話を検査して)、トラフィック上でポリシーを適用できるようにする機能です。 この機能を設定するには、管理者は、元のサーバ証明書の代わりに、クライアントがアクセスする HTTPS ベースの Web サイトに提示する NGFW のモジュールの復号化証明書を設定する必要があります。
復号化が機能するには、NGFW モジュールがサーバに提示された証明書を信頼する必要があります。 このドキュメントでは、NGFW サービス モジュールとサーバ間で SSL ハンドシェイクが失敗し、ユーザが特定の HTTPS ベースの Web サイトに接続しようとすると、その Web サイトが失敗するシナリオについて説明します。
このドキュメントでは、これらのポリシーは PRSM を搭載する NGFW サービス モジュールで定義されています。
復号化ポリシーが NGFW サービス モジュールで定義され、前述のように設定されている場合、NGFW サービス モジュールは、モジュールを通じて SSL 暗号化されたトラフィックすべてを傍受して復号化しようとします。
次の図は、イベントのシーケンスを示しています。
この図では、A はクライアント、B は NGFW サービス モジュール、C は HTTPS サーバです。 このドキュメントで示されている例では、HTTPS ベースのサーバは Cisco 適応型セキュリティ アプライアンス(ASA)の Cisco Adaptive Security Device Manager(ASDM)です。
このプロセスで考慮する必要がある 2 つの重要な要素があります。
サーバが NFGW サービス モジュールによって提示されるで SSL 暗号化を受け入れることができない場合、次のようなエラー メッセージが表示されます。
表示されるエラーの(ハイライトされた)詳細情報を記録することが重要です。
error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure
モジュール診断のアーカイブにある /var/log/cisco/tls_proxy.log ファイルを確認すると、次のエラー メッセージが表示されています。
2014-02-05 05:21:42,189 INFO TLS_Proxy - SSL alert message received from
server (0x228 = "fatal : handshake failure") in Session: x2fd1f6
2014-02-05 05:21:42,189 ERROR TLS_Proxy - TLS problem (error:14077410:
SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure) while
connecting to server for Session: x2fd1f6
この問題の 1 つの原因は、Triple Data Encryption Standard/高度暗号化規格(3DES/AES)ライセンス(通常 K9 と呼ばれています)がモジュールにインストールされていないことです。 料金が発生するおとなく、モジュールの K9 ライセンスをダウンロードし、PRSM 経由でアップロードできます。
3DES/AES ライセンスをインストールしても問題が解決しない場合は、NGFW サービス モジュールとサーバ間の SSL ハンドシェイクのパケット キャプチャを取得し、サーバ管理者に連絡して、サーバの適切な SSL 暗号化をイネーブルにします。
NGFW サービス モジュールがサーバに提示されている証明書を信頼しない場合、次のようなエラー メッセージが表示されます。
表示されるエラーの(ハイライトされた)詳細情報を記録することが重要です。
error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
モジュール診断のアーカイブにある /var/log/cisco/tls_proxy.log ファイルを確認すると、次のエラー メッセージが表示されています。
2014-02-05 05:22:11,505 INFO TLS_Proxy - Certificate verification failure:
self signed certificate (code 18, depth 0)
2014-02-05 05:22:11,505 INFO TLS_Proxy - Subject: /unstructuredName=ciscoasa
2014-02-05 05:22:11,505 INFO TLS_Proxy - Issuer: /unstructuredName=ciscoasa
2014-02-05 05:22:11,505 INFO TLS_Proxy - SSL alert message received from
server (0x230 = "fatal : unknown CA") in Session: x148a696e
2014-02-05 05:22:11,505 ERROR TLS_Proxy - TLS problem (error:14090086:
SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed) while
connecting to server for Session: x148a696e
モジュールがサーバ SSL 証明書を信頼できない場合、SSL ハンドシェイク プロセスが正常に行えるように、PRSM を搭載するモジュールにサーバ証明書をインポートする必要があります。
サーバ証明書をインポートするには、次の手順を実行します。