はじめに
このドキュメントでは、Cisco Prime Infrastructure(プライマリ/セカンダリ)で新しい証明書署名要求(CSR)が生成された後にTrust-on-First-Use(TOFU)証明書の不一致が原因で発生する統合の問題と、そのトラブルシューティングと解決方法について説明します。
前提条件
要 件
次の項目に関する知識があることが推奨されます。
- Cisco Prime Infrastructure
- ハイ アベイラビリティ
使用するコンポーネント
このドキュメントの情報は、Cisco Prime Infrastructureバージョン3.5以降に基づくものです。
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されたものです。このドキュメントで使用するすべてのデバイスは、クリアな(デフォルト)設定で作業を開始しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。
バックグラウンド情報
これらは、Cisco Prime Infrastructureのハイアベイラビリティと証明書の生成に関する情報を提供する参照ドキュメントです。
ハイアベイラビリティガイド:https://www.cisco.com/c/en/us/td/docs/net_mgmt/prime/infrastructure/3-6/admin/guide/bk_CiscoPrimeInfrastructure_3_6_AdminGuide/bk_CiscoPrimeInfrastructure_3_6_AdminGuide_chapter_01011.html
管理者ガイド:https://www.cisco.com/c/en/us/td/docs/net_mgmt/prime/infrastructure/3-6/admin/guide/bk_CiscoPrimeInfrastructure_3_6_AdminGuide/bk_CiscoPrimeInfrastructure_3_6_AdminGuide_chapter_0100.html
問題
TOFU:リモートホストから受信した証明書は、接続が初めて行われたときに信頼されます。
Prime InfrastructureまたはPrimeが接続されているリモートホスト上のTOFU証明書は、新しい証明書が生成されるか、サーバがVMホストに再導入されると変更される可能性があります。
Prime Infrastructureサーバ(プライマリ/セカンダリ)で新しいCSRを生成してインポートすると、サービスの再起動後に接続が再開されたときに、新しいTOFU証明書情報がリモートサーバに送信されます。
最初の接続の後に、リモートホストが後続の接続に対して別の証明書を送信すると、接続は拒否されます。
リモートホストは、古いTOFUがまだ存在する場所(HA導入のプライマリまたはセカンダリサーバ、統合サービスエンジン(ISE)サーバ)である可能性があります。
これにより、プライマリサーバとセカンダリサーバ、PrimeサーバとISEサーバの間で登録エラーが発生します。
「トラブルシューティング」セクションでは、このようなシナリオのヘルスモニタログで見つかる可能性のあるエラーメッセージについて説明します。
トラブルシュート
プライマリヘルスモニタログで、セカンダリ証明書の不一致を示す次のエラーメッセージを確認できます。
[system] [HealthMonitorThread] TOFU failed.
Check local trust Trust-on-first-use is configure for this connection.
Current certificate of the remote host is different from what was used earlier
- CN=prime-sec, OU=Prime Infra, O=Cisco Systems, L=SJ, ST=CA, C=US
javax.net.ssl.SSLHandshakeException: java.security.cert.CertificateException:
Trust-on-first-use is configure for this connection.
Current certificate of the remote host is different from what was used earlier
- CN=prime-sec
これらのエラーメッセージは、ISEサーバ証明書の不一致を示すPrime Infrastructureログに記録されています。
[system] [seqtaskexecutor-3069] TOFU failed.
Check local trust Trust-on-first-use is configure for this connection.
Current certificate of the remote host is different from what was used earlier
- CN=ISE-server
javax.net.ssl.SSLHandshakeException: java.security.cert.
CertificateException: Trust-on-first-use is configure for this connection.
Current certificate of the remote host is different from what was used earlier
- CN=ISE-server
セカンダリのヘルスモニタログで、プライマリ証明書の不一致を示す次のエラーメッセージを確認できます。
[system] [HealthMonitorThread] TOFU failed.
Check local trust Trust-on-first-use is configure for this connection.
Current certificate of the remote host is different from what was used earlier
- CN=prime-pri, OU=Prime Infra, O=Cisco Systems, L=SJ, ST=CA, C=US
javax.net.ssl.SSLHandshakeException: java.security.cert.CertificateException:
Trust-on-first-use is configure for this connection.
Current certificate of the remote host is different from what was used earlier
- CN=prime-pri
ソリューション
primeから統合を再試行する前に、対応するリモートホストの古い証明書エントリを特定して削除する必要がある、primeの現在のTOFU証明書をリストする必要があります。
コンフィギュレーション
証明書検証リストの表示
コマンドncs certvalidation tofu-certs listcertsは証明書検証リストを表示するために使用できます。
この出力は、Cisco Prime Infrastructureプライマリサーバ[IP=1XX.XX.XX.XX]からの出力です。
prime-pri/admin# ncs certvalidation tofu-certs listcerts
Host certificate are automatically added to this list on first connection,
if trust-on-first-use is configured - ncs certvalidation certificate-check ...
host=1X.XX.XX.XX_8082; subject= /C=US/ST=CA/L=SJ/O=Cisco Systems/OU=Prime Infra/CN=prime-pri
host=1Z.ZZ.ZZ.ZZ_443; subject= /C=US/ST=CA/L=SJ/O=Cisco Systems/OU=Prime Infra/CN=ISE-server
host=1YY.YY.YY.YY_8082; subject= /C=US/ST=CA/L=SJ/O=Cisco Systems/OU=Prime Infra/CN=prime-sec
prime-pri/admin#
この出力は、Cisco Prime Infrastructureセカンダリサーバ[IP=1YY.YY.YY.YY]からのものです。
prime-sec/admin# ncs certvalidation tofu-certs listcerts
Host certificate are automatically added to this list on first connection,
if trust-on-first-use is configured - ncs certvalidation certificate-check ...
host=1YY.YY.YY.YY_8082; subject= /C=US/ST=CA/L=SJ/O=Cisco Systems/OU=Prime Infra/CN=prime-sec
host=127.0.0.1_8082; subject= /C=US/ST=CA/L=SJ/O=Cisco Systems/OU=Prime Infra/CN=prime-sec
host=1X.XX.XX.XX_8082; subject= /C=US/ST=CA/L=SJ/O=Cisco Systems/OU=Prime Infra/CN=prime-pri
prime-sec/admin#
証明書の削除
証明書の検証を削除するには、ncs certvalidation tofu-certs deletecert host <host> コマンドを使用します。
プライマリサーバで、ISE証明書とセカンダリサーバのTOFU証明書の古いエントリをそれぞれ確認して削除します。
- ncs certvalidation tofu-certs deletecert host 1YY.YY.YY.YY_8082
- ncs certvalidation tofu-certs deletecert host 1Z.ZZ.ZZ.ZZ_443
セカンダリサーバで、ncs certvalidation tofu-certs deletecert host 1X.XX.XX.XX_8082コマンドを使用して、プライマリサーバのtofu証明書の古いエントリを確認し、削除します。
プライマリからセカンダリへのHAの再初期化
ステップ 1: 管理者権限を持つユーザIDとパスワードでCisco Prime Infrastructureにログインします。
ステップ 2 メニューから、Administration > Settings > High Availabilityの順に選択します。Cisco Prime InfrastructureにHAステータスページが表示されます。
ステップ 3: HA設定を選択し、次のようにフィールドに入力します。
- セカンダリサーバ:セカンダリサーバのIPアドレスまたはホスト名を入力します。
- 認証キー:セカンダリサーバのインストール時に設定した認証キーパスワードを入力します。
- 電子メールアドレス:HA状態の変更に関する通知の送信先アドレス(またはカンマ区切りのアドレスのリスト)を入力します。「メールサーバーの構成」ページ(「メールサーバーの設定の構成」を参照)を使用して電子メール通知をすでに構成している場合は、ここで入力した電子メールアドレスが、メールサーバー用にすでに構成されているアドレスのリストに追加されます。
- [フェールオーバータイプ]: [手動]または[自動]を選択します。[手動]を選択することをお勧めします。
ホスト名をIPアドレスに解決するには、DNSサーバを使用することを推奨します。DNSサーバの代わりに/etc/hostsファイルを使用する場合は、ホスト名の代わりにセカンダリIPアドレスを入力する必要があります。
ステップ 4:仮想IP機能を使用する場合は、Enable Virtual IPチェックボックスをオンにしてから、次のように追加のフィールドに入力します。
- IPV4仮想IP:両方のHAサーバで使用する仮想IPv4アドレスを入力します。
- IPV6仮想IP: (オプション)両方のHAサーバで使用するIPv6アドレスを入力します。
仮想IPアドレッシングは、両方のサーバが同じサブネット上にない限り機能しません。IPV6アドレスブロックfe80は、リンクローカルユニキャストアドレッシング用に予約されているため、使用しないでください。
ステップ 5:HA関連の環境パラメータが設定の準備ができているかどうかを確認するには、Check Readinessをクリックします。
ステップ 6:マイルストーンの経過表示バーを表示するには、Registerをクリックし、ここに示すように、HA登録前、データベースレプリケーション、およびHA登録後が100%完了したことを確認します。Cisco Prime InfrastructureがHA登録プロセスを開始します。登録が正常に完了すると、コンフィギュレーションモードに「Primary Active」の値が表示されます。

ISEサーバの再設定
ステップ 1:Administration > Servers > ISE Serversの順に移動します。
ステップ 2Select a command > Add ISE Serverの順に移動し、 Go
ステップ 3 ISEサーバのIPアドレス、ユーザ名、パスワードを入力します
ステップ 4ISEサーバのパスワードを確認します。
ステップ 5[Save] をクリックします。
確認
ncs certvalidation tofu-certs listcertsコマンドを使用すると、新しい証明書を確認できます。
関連情報