この製品のドキュメントセットは、偏向のない言語を使用するように配慮されています。このドキュメントセットでの偏向のない言語とは、年齢、障害、性別、人種的アイデンティティ、民族的アイデンティティ、性的指向、社会経済的地位、およびインターセクショナリティに基づく差別を意味しない言語として定義されています。製品ソフトウェアのユーザインターフェイスにハードコードされている言語、RFP のドキュメントに基づいて使用されている言語、または参照されているサードパーティ製品で使用されている言語によりドキュメントに例外が存在する場合があります。シスコのインクルーシブ ランゲージの取り組みの詳細は、こちらをご覧ください。
シスコは世界中のユーザにそれぞれの言語でサポート コンテンツを提供するために、機械と人による翻訳を組み合わせて、本ドキュメントを翻訳しています。ただし、最高度の機械翻訳であっても、専門家による翻訳のような正確性は確保されません。シスコは、これら翻訳の正確性について法的責任を負いません。原典である英語版(リンクからアクセス可能)もあわせて参照することを推奨します。
このドキュメントでは、シスコソフトウェアシステムの自己署名証明書(SSC)の期限切れによって発生するエラーについて説明し、回避策を示します。
次の項目に関する知識があることが推奨されます。
これらのコンポーネントは、SSCの期限切れの影響を受けるソフトウェアシステムです。
自己署名証明書を使用するすべてのCisco IOSシステムおよびCisco IOS XEシステム。Cisco Bug ID CSCvi48253 の修正が含まれていないか、SSCの生成時にCisco Bug ID CSCvi48253 の修正が含まれていないものです。これには、次のような特徴があります。
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、クリアな(デフォルト)設定で作業を開始しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。
注:このドキュメントには、FN40789 の内容に加えて、追加のコンテキスト、例、更新、およびQ&Aが含まれています。
UTCの2020年1月1日の00:00に、Cisco IOSおよびCisco IOS XEシステムで生成されたすべての自己署名証明書(SSC)は、SSCの生成時にCisco IOSおよびCisco IOS XEの修正済みバージョンを実行していた場合を除き、期限が切れるように設定されていました。その後、未修正のCisco IOSシステムは新しいSSCを生成できません。これらの自己署名証明書に依存してセキュアな接続を確立または終了するサービスは、証明書の有効期限が切れると機能しません。
この問題は、Cisco IOSまたはCisco IOS XEデバイスによって生成され、デバイス上のサービスに適用された自己署名証明書にのみ影響します。Cisco IOS CA機能によって生成された証明書を含む、認証局(CA)によって生成された証明書は、この問題の影響を受けません。
Cisco IOSおよびCisco IOS XEソフトウェアの特定の機能は、デジタル署名されたX.509証明書を使用して暗号化IDを検証します。これらの証明書は、外部のサードパーティCAによって生成されるか、Cisco IOSまたはCisco IOS XEデバイス自体で自己署名証明書として生成されます。該当するCisco IOSおよびCisco IOS XEソフトウェアリリースでは、自己署名証明書(SSC)の有効期限が2020-01-01 00:00:00 UTCに設定されています。この日付を過ぎると、証明書の有効期限が切れ、無効になります。
自己署名証明書に依存できるサービスには、次のものがあります。
dspfarm
リソース(会議、メディアターミネーションポイント、またはトランスコーディング)(暗号化シグナリングが有効になっている状態)2020-01-01 00:00:00 UTC以降の該当するCisco IOSまたはCisco IOS XEソフトウェアリリースで自己署名証明書(SSC)を生成しようとすると、次のエラーが発生します。
../cert-c/source/certobj.c(535) : E_VALIDITY : validity period start later than end
自己署名証明書に依存するサービスは機能しません。例:
注:このField Noticeの影響を受けるには、デバイスに自己署名証明書が定義されている必要があります。また、自己署名証明書は、次に概説する1つ以上の機能に適用されている必要があります。自己署名証明書が存在するだけでは、証明書の有効期限が切れてもデバイスの動作に影響を与えず、ただちにアクションを実行する必要はありません。デバイスが影響を受けるには、次のステップ3とステップ4の両方の基準を満たしている必要があります。
自己署名証明書を使用しているかどうかを確認するには、次の手順を実行します。
次を入力します。 show running-config | begin crypto
コマンドをデバイスで実行します。
クリプトPKIトラストポイントの設定を探します。
crypto PKIトラストポイント設定で、トラストポイント登録設定を探します。影響を受けるには、「自己署名」用にトラストポイント登録を設定する必要があります。また、自己署名証明書も設定に表示される必要があります。次の例に示すように、トラストポイント名に「self-signed」という単語が含まれていないことに注意してください。
crypto pki trust-point TP-self-signed-XXXXXXXX enrollment selfsigned subject-name cn=IOS
-Self-Signed-Certificate-662415686 revocation-check none
rsakeypair TP-self-signed-662415686 ! ! crypto pki certificate chain TP-self-signed-XXXXXXXX certificate self-signed 01
3082032E 31840216 A0030201 02024101 300D0609 2A864886 F70D0101 05050030 30312E30 2C060355 04031325 494A531D 53656C66
2D536967 6E65642D 43657274 ... ECA15D69 11970A66 252D34DC 760294A6 D1EA2329 F76EB905 6A5153C9 24F2958F
D19BFB22 9F89EE23 02D22D9D 2186B1A1 5AD4
トラストポイント登録が「selfsigned」に対して設定されていない場合は、デバイスはこのField Noticeの影響を受けません。必要な操作はありません。
トラストポイント登録が「自己署名」に対して設定され、自己署名証明書が設定に表示される場合は、このField Noticeの影響を受ける可能性があります。ステップ 4 に進みます。
ステップ3で、トラストポイント登録が「自己署名」用に設定され、自己署名証明書が設定に表示されると判断した場合は、自己署名証明書がデバイスの機能に適用されているかどうかを確認します。
次の設定例では、SSCに結び付けることができる各種機能を示しています。
ip http secure-server
また、次のコード例に示すように、トラストポイントを定義することもできます。このコマンドが存在しない場合、デフォルトの動作では自己署名証明書が使用されます。
ip http secure-trust-point TP-self-signed-XXXXXXXX
トラストポイントが定義されていて、そのトラストポイントが自己署名証明書とは異なる証明書を指している場合は、影響を受けません。
HTTPSサーバの場合、自己署名証明書はすでにWebブラウザで信頼されていないため、期限切れの証明書の影響はほとんどありません。自己署名証明書が期限切れでない場合でも警告が表示されます。期限切れの証明書があると、ブラウザで表示される警告が変わる場合があります。
SIP over TLSの場合、コンフィギュレーションファイルには次のテキストが含まれています。
voice service voip sip session transport tcp tls ! sip-ua crypto signaling default trust-point <self-signed-trust-point-name> ! or crypto signaling remote-addr a.b.c.d /nn trust-point <self-signed-trust-point-name> !
暗号化シグナリングが有効になっているCisco Unified CMEの場合、コンフィギュレーションファイルには次のテキストが含まれています。
telephony-service secure-signaling trust-point <self-signed-trust-point-name> tftp-server-credentials trust-point <self-signed-trust-point-name>
暗号化シグナリングが有効になっているCisco Unified SRSTの場合、コンフィギュレーションファイルには次のテキストが含まれています。
credentials trust-point <self-signed-trust-point-name>
を参照 Cisco IOS dspfarm
リソース(会議、メディアターミネーションポイント、またはトランスコーディング)で暗号化シグナリングが有効になっている場合、コンフィギュレーションファイルには次のテキストが存在します。
dspfarm profile 1 conference security trust-point <self-signed-trust-point-name> ! dspfarm profile 2 mtp security trust-point <self-signed-trust-point-name> ! dspfarm profile 3 transcode security trust-point <self-signed-trust-point-name> ! sccp ccm 127.0.0.1 identifier 1 priority 1 version 7.0 trust-point <self-signed-trust-point-name> !
暗号化されたシグナリングを使用して設定されたSTCAPPポートの場合、コンフィギュレーションファイルには次のテキストが含まれています。
stcapp security trust-point <self-signed-trust-point-name> stcapp security mode encrypted
セキュアモードのCisco Unified Communications Gateway Services APIの場合、コンフィギュレーションファイルに次のテキストが含まれています。
uc secure-wsapi ip http secure-server ip http secure-trust-point TP-self-signed-XXXXXXXX
SSLVPNの場合、コンフィギュレーションファイルには次のテキストが含まれています。
webvpn gateway <gw name> ssl trust-point TP-self-signed-XXXXXXXX
OR
crypto ssl policy <policy-name>
pki trust-point <trust-point-name> sign
ISAKMPおよびIKEv2の場合、いずれかの設定が存在すれば自己署名証明書を使用できます(この機能が自己署名証明書を使用するか、または別の証明書を使用するかを判断するには、設定の詳細な分析が必要です)。
crypto isakmp policy <number> authentication pre-share | rsa-encr < NOT either of these ! crypto ikev2 profile <prof name> authentication local rsa-sig pki trust-point TP-self-signed-xxxxxx ! crypto isakmp profile <prof name> ca trust-point TP-self-signed-xxxxxx
SSHサーバの場合、SSHセッションの認証に証明書を利用できる可能性は非常に低いです。ただし、設定をチェックしてこれを確認できます。影響を受けるには、次のコード例に示す3行すべてが必要です。
注:デバイスへのSSH接続にユーザ名とパスワードの組み合わせを利用しても、影響はありません。
ip ssh server certificate profile ! Certificate used by server server trust-point sign TP-self-signed-xxxxxx
RESTCONFの場合、コンフィギュレーションファイルに次のテキストが含まれています。
restconf
! And one of the following ip http secure-trust-point TP-self-signed-XXXXXXXXX ! OR ip http client secure-trust-point TP-self-signed-XXXXXXXX
解決策は、Cisco IOSまたはCisco IOS XEソフトウェアを、修正を含むリリースにアップグレードすることです。
ソフトウェアをアップグレードした後、自己署名証明書を再生成し、トラストストアで証明書を必要とするすべてのデバイスにエクスポートする必要があります。
ソフトウェアをすぐにアップグレードできない場合は、次の3つの回避策を使用できます。
認証局からの証明書をインストールします。一般的なCAには、コモド、 Let's
暗号化、RapidSSL、Thawte、Sectigo、GeoTrust、Symantecなど。この回避策を使用すると、証明書要求が生成され、Cisco IOSによって表示されます。次に、管理者は要求をコピーしてサードパーティCAに送信し、結果を取得します。
注:CAを使用して証明書に署名することは、セキュリティのベストプラクティスと見なされます。この手順は、このField Noticeでの回避策として提供されていますが、この回避策を適用した後も、自己署名証明書を使用するよりも、サードパーティCA署名証明書を使用し続けることを推奨いたします。
サードパーティCAから証明書をインストールするには、次の手順を実行します。
証明書署名要求(CSR)を作成します。
Router#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#crypto pki trustpoint TEST
Router(ca-trustpoint)#enrollment term pem
Router(ca-trustpoint)#subject-name CN=TEST
Router(ca-trustpoint)#revocation-check none
Router(ca-trustpoint)#rsakeypair TEST
Router(ca-trustpoint)#exit
Router(config)#crypto pki enroll TEST
% Start certificate enrollment ..
% The subject name in the certificate will include: CN=TEST
% The subject name in the certificate will include: Router.cisco.com
% The serial number in the certificate will be: FTX1234ABCD
% Include an IP address in the subject name? [no]: n
Display Certificate Request to terminal? [yes/no]: yes
Certificate Request follows:
-----BEGIN CERTIFICATE REQUEST-----
A Base64 Certificate is displayed here. Copy it, along with the ---BEGIN and ---END lines.
-----END CERTIFICATE REQUEST-----
---End - This line not part of the certificate request---
2. CSRをサードパーティCAに送信します。
注:CSRをサードパーティCAに送信し、証明書を取得する手順は、使用するCAによって異なります。この手順の実行方法については、使用しているCAのドキュメントを参照してください。
3. CA証明書とともに、ルータの新しいID証明書をダウンロードします。
4.デバイスにCA証明書をインストールします。
Router#configure terminal Enter configuration commands, one per line. End with CNTL/Z. Router(config)#crypto pki auth TEST Enter the base 64 encoded CA certificate. End with a blank line or the word "quit" on a line by itself -----BEGIN CERTIFICATE----- REMOVED -----END CERTIFICATE----- Certificate has the following attributes: Fingerprint MD5: 79D15A9F C7EB4882 83AC50AC 7B0FC625 Fingerprint SHA1: 0A80CC2C 9C779D20 9071E790 B82421DE B47E9006 % Do you accept this certificate? [yes/no]: yes trust-point CA certificate accepted. % Certificate successfully imported
5.デバイスにID証明書をインストールします。
Router(config)#crypto pki import TEST certificate Enter the base 64 encoded certificate. End with a blank line or the word "quit" on a line by itself -----BEGIN CERTIFICATE----- REMOVED -----END CERTIFICATE----- % Router Certificate successfully imported
ローカルのCisco IOS Certificate Authorityサーバを使用して、新しい証明書を生成し、署名します。
注:ローカルCAサーバ機能は、一部の製品では使用できません。
Router#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#ip http server
Router(config)#crypto pki server IOS-CA
Router(cs-server)#grant auto
Router(cs-server)#database level complete
Router(cs-server)#no shut
%Some server settings cannot be changed after CA certificate generation.
% Please enter a passphrase to protect the private key
% or type Return to exit
Password:
Re-enter password:
% Generating 1024 bit RSA keys, keys will be non-exportable...
[OK] (elapsed time was 1 seconds)
% Certificate Server enabled.
Router#show crypto pki server IOS-CA Certificates
Serial Issued date Expire date Subject Name
1 21:31:40 EST Jan 1 2020 21:31:40 EST Dec 31 2022 cn=IOS-CA
Router#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#crypto pki trustpoint TEST
Router(ca-trustpoint)#enrollment url http://
:80
<<<< Replace
with the IP address of an interface on the router
Router(ca-trustpoint)#
subject-name CN=TEST
Router(ca-trustpoint)#
revocation-check none
Router(ca-trustpoint)#
rsakeypair TEST
Router(ca-trustpoint)#
exit
Router#
configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#
crypto pki auth TEST
Certificate has the following attributes:
Fingerprint MD5: C281D9A0 337659CB D1B03AA6 11BD6E40
Fingerprint SHA1: 1779C425 3DCEE86D 2B11C880 D92361D6 8E2B71FF
% Do you accept this certificate? [yes/no]:
yes
Trustpoint CA certificate accepted.
Router(config)#
crypto pki enroll TEST
%
% Start certificate enrollment ..
% Create a challenge password. You will need to verbally provide this
password to the CA Administrator in order to revoke your certificate.
For security reasons your password will not be saved in the configuration.
Please take note of it.
Password:
Re-enter password:
% The subject name in the certificate will include: CN=TEST
% The subject name in the certificate will include: Router.cisco.com
% Include the router serial number in the subject name? [yes/no]: yes
% The serial number in the certificate will be: FTX1234ABCD
% Include an IP address in the subject name? [no]: no
Request certificate from CA? [yes/no]:
yes
% Certificate request sent to Certificate Authority
% The 'show crypto pki certificate verbose TEST' command will show the fingerprint
OpenSSLを使用してPKCS12証明書バンドルを生成し、バンドルをCisco IOSにインポートします。
LINUX、UNIX、またはMAC(OSX)の例
User@linux-box$ openssl req -newkey rsa:2048 -nodes -keyout tmp.key -x509 -days 4000 -out tmp.cer -subj
"/CN=SelfSignedCert" &> /dev/null && openssl pkcs12 -export -in tmp.cer -inkey tmp.key -out tmp.bin
-passout pass:Cisco123 && openssl pkcs12 -export -out certificate.pfx -password pass:Cisco123 -inkey
tmp.key -in tmp.cer && rm tmp.bin tmp.key tmp.cer && openssl base64 -in certificate.pfx
MIII8QIBAzCCCLcGCSqGSIb3DQEHAaCCCKgEggikMIIIoDCCA1cGCSqGSIb3DQEH
BqCCA0gwggNEAgEAMIIDPQYJKoZIhvcNAQcBMBwGCiqGSIb3DQEMAQYwDgQIGnxm
t5r28FECAggAgIIDEKyw10smucdQGt1c0DdfYXwUo8BwaBnzQvN0ClawXNQln2bT
vrhus6LfRvVxBNPeQz2ADgLikGxatwV5EDgooM+IEucKDURGLEotaRrVU5Wk3EGM
mjC6Ko9OaM30vhAGEEXrk26cq+OWsEuF3qudggRYv2gIBcrJ2iUQNFsBIrvlGHRo
FphOTqhVaAPxZS7hOB30cK1tMKHOIa8EwygyBvQPfjjBT79QFgeexIJFmUtqYX/P
Router#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#crypto pki trustpoint TEST
Router(ca-trustpoint)#enrollment terminal
Router(ca-trustpoint)#revocation-check none
Router(ca-trustpoint)#exit
R1(config)#crypto pki import TEST pkcs12 terminal password Cisco123
Enter the base 64 encoded pkcs12.
End with a blank line or the word "quit" on a line by itself:
MIII8QIBAzCCCLcGCSqGSIb3DQEHAaCCCKgEggikMIIIoDCCA1cGCSqGSIb3DQEH
BqCCA0gwggNEAgEAMIIDPQYJKoZIhvcNAQcBMBwGCiqGSIb3DQEMAQYwDgQItyCo
Vh05+0QCAggAgIIDENUWY+UeuY5sIRZuoBi2nEhdIPd1th/auBYtX79aXGiz/iEW
R1#show crypto pki certificates TEST Load for five secs: 5%/1%; one minute: 2%; five minutes: 3% Time source is SNTP, 15:04:37.593 UTC Mon Dec 16 2019 CA Certificate Status: Available Certificate Serial Number (hex): 00A16966E46A435A99 Certificate Usage: General Purpose Issuer: cn=SelfSignedCert Subject: cn=SelfSignedCert Validity Date: start date: 14:54:46 UTC Dec 16 2019 end date: 14:54:46 UTC Nov 28 2030
注:自己署名証明書は、UTCの2020年1月1日の00:00に期限切れになるため、それ以降は作成できません。
該当するCisco IOSまたはCisco IOS XEバージョンを実行する製品で生成された自己署名X.509 PKI証明書は、2020年1月1日00:00:00 UTCに期限切れとなります。2020年1月1日00:00:00 UTC以降は、該当するデバイスに新しい自己署名証明書を作成できません。これらの自己署名証明書に依存するサービスは、証明書の有効期限が切れると機能しなくなります。
自己署名証明書に依存する影響を受ける製品の機能は、証明書の有効期限が切れると機能しなくなります。 詳細については、Field Noticeを参照してください。
Field Noticeには、自己署名証明書を使用するかどうか、および設定がこの問題の影響を受けるかどうかを判断するための手順が記載されています。Field Noticeの「該当製品の識別方法」セクションを参照してください。
はい。Cisco CLIアナライザを使用して、System Diagnosticを実行します。証明書が存在し、それが使用されている場合は、アラートを表示できます。https://cway.cisco.com/cli/
はい。シスコは、この問題のソフトウェア修正と、ソフトウェアのアップグレードがすぐに可能でない場合の回避策をリリースしています。詳細については、Field Noticeを参照してください。
いいえ。この問題は、特定のバージョンのCisco IOSまたはCisco IOS XEで生成され、製品のサービスに適用された証明書を持つ自己署名証明書(SSC)を使用する製品にのみ影響します。認証局(CA)によって生成された証明書を使用する製品は、この問題の影響を受けません。
いいえ。証明書は、外部のサードパーティ認証局(CA)、またはCisco IOSデバイスまたはCisco IOS XEデバイス自体で自己署名証明書として生成できます。特定のユーザ要件では、自己署名証明書の使用が必要になる場合があります。認証局(CA)によって生成された証明書は、この問題の影響を受けません。
残念ながら、テクノロジーベンダーの最善の努力にもかかわらず、ソフトウェアの不具合はまだ発生しています。シスコのテクノロジーにバグが発見された場合、シスコは透明性を確保し、ユーザがネットワークを保護するために必要な情報を提供することに尽力しています。
この場合、問題の原因は既知のソフトウェアの不具合であり、影響を受けるCisco IOSおよびCisco IOS XEのバージョンでは、自己署名証明書の有効期限を常に2020年1月1日の00:00:00 UTCに設定できます。この日付を過ぎると、証明書の有効期限が切れて無効になり、製品の機能に影響する可能性があります。
証明書には通常、有効期限があります。このソフトウェアバグの場合、2020年1月1日の日付は10年以上前のCisco IOSおよびCisco IOS XEソフトウェアの開発期間中に使用されており、人為的なエラーです。
15.6(03)M07、15.7(03)M05、15.8(03)M03、および15.9(03)Mより前のCisco IOSリリースを実行するシスコ製品、および16.9.1より前のCisco IOS XEリリースを実行するシスコ製品
このField Noticeを確認して、この問題による影響があるかどうかを評価し、影響がある場合は、回避策とソリューションの説明を使用してこの問題を軽減する必要があります。
いいえ。これはセキュリティの脆弱性ではなく、製品の完全性に対するリスクもありません。
いいえ。SSHはRSAキーペアを使用しますが、まれな設定を除き、証明書を使用しません。Cisco IOSで証明書を使用するには、次の設定が存在する必要があります。
ip ssh server certificate profile server trust-point sign TP-self-signed-xxxxxx
Polarisベースのプラットフォーム(3650/3850/Catalyst 9Kシリーズ)では、16.9.1以降で修正が利用可能
CDBプラットフォームについては、15.2(7)E1a以降で修正が利用可能です
他のクラシックスイッチングプラットフォームの場合:
コミットは進行中ですが、CCOリリースは公開されていません。次のCCOリリースで修正できます。
インターンでは、他の利用可能な回避策のいずれかを利用してください。
WAASは引き続き正常に動作し、トラフィックを最適化しますが、AppNav-XEとCentral Managerが期限切れの自己署名証明書を持つデバイスにオフラインになりました。つまり、AppNav-Clusterを監視したり、WAASのポリシーを変更したりすることはできません。要約すると、WAASは引き続き正常に動作しますが、証明書の問題が解決されるまで、管理とモニタリングは中断されます。 この問題を解決するには、Cisco IOSで新しい証明書を生成し、Central Managerにインポートする必要があります。
改定 | 発行日 | コメント |
---|---|---|
3.0 |
27-Sep-2023 |
再認定 |
1.0 |
13-Dec-2019 |
初版 |