Red Hat Training
A Red Hat training course is available for Red Hat Enterprise Linux
26.2. 証明書の更新
詳細は、以下を参照してください。
- 証明書の更新が自動で行われています。「証明書の自動更新」を参照してください。
- 手動による証明書の更新。「CA 証明書の手動更新」 を参照してください。
26.2.1. 証明書の自動更新
Certmonger
サービスは、有効期限が切れる前に以下の証明書の 28 日を自動的に更新します。
- IdM CA がルート CA として発行する CA 証明書
- 内部 IdM サービスが使用する統合 IdM CA が発行するサブシステム証明書およびサーバー証明書
サブ CA の CA 証明書を自動的に更新するには、
certmonger
追跡リストに記載する必要があります。追跡リストを更新するには、以下を実行します。
[root@ipaserver ~]# ipa-certupdate trying https://idmserver.idm.example.com/ipa/json Forwarding 'schema' to json server 'https://idmserver.idm.example.com/ipa/json' trying https://idmserver.idm.example.com/ipa/json Forwarding 'ca_is_enabled' to json server 'https://idmserver.idm.example.com/ipa/json' Forwarding 'ca_find/1' to json server 'https://idmserver.idm.example.com/ipa/json' Systemwide CA database updated. Systemwide CA database updated. The ipa-certupdate command was successful
注記
外部 CA をルート CA として使用している場合は、「CA 証明書の手動更新」 の説明に従って証明書を手動で更新する必要があります。
Certmonger
サービスは、外部 CA により署名された証明書を自動的に更新することはできません。
自動更新が想定どおりに機能していることを確認するには、
/var/log/messages
ファイルで certmonger
のログメッセージを確認します。
- 証明書の更新後、
certmonger
は以下のようなメッセージを記録し、更新操作が成功したか、失敗したことを示します。Certificate named "NSS Certificate DB" in token "auditSigningCert cert-pki-ca" in database "/var/lib/pki-ca/alias" renew success
- 証明書が有効期限に近づくと、
certmonger
は次のメッセージをログに記録します。certmonger: Certificate named "NSS Certificate DB" in token "auditSigningCert cert-pki-ca" in database "/var/lib/pki-ca/alias" will not be valid after 20160204065136.
26.2.2. CA 証明書の手動更新
ipa-cacert-manage
ユーティリティーを使用して、以下を手動で更新できます。
- 自己署名 IdM CA 証明書
- 外部署名の IdM CA 証明書
ipa-cacert-manage renew コマンドで更新された証明書は、古い証明書と同じキーペアとサブジェクト名を使用します。証明書を更新しても、証明書のロールオーバーを有効にするために以前のバージョンが削除されません。
詳細は ipa-cacert-manage(1) の man ページを参照してください。
26.2.2.1. 自己署名証明書の手動更新
- ipa-cacert-manage --renew コマンドを実行します。このコマンドでは、証明書へのパスを指定する必要はありません。
- 更新された証明書が LDAP 証明書ストアと、
/etc/pki/pki-tomcat/alias
NSS データベースに表示されるようになりました。 - すべてのサーバーとクライアントで
ipa-certupdate
ユーティリティーを実行し、LDAP から新しい証明書に関する情報で更新します。すべてのサーバーとクライアントでipa-certupdate
を実行する必要があります。重要証明書を手動でインストールした後は、常にipa-certupdate
を実行します。これがない場合、証明書は他のマシンに配布されません。
更新した証明書が正しくインストールされていることを確認するには、
certutil
ユーティリティーを使用して、データベース内の証明書を表示します。以下に例を示します。
# certutil -L -d /etc/pki/pki-tomcat/alias
26.2.2.2. 外部署名の IdM CA 証明書の手動更新
- ipa-cacert-manage renew --external-ca コマンドを実行します。
- このコマンドは、
/var/lib/ipa/ca.crt
CSR ファイルを作成します。CSR を外部 CA に送信して、更新した CA 証明書を取得します。 - ipa-cacert-manage renew 再度実行し、
--external-cert-file
オプションを使用して更新された CA 証明書と外部 CA 証明書チェーンファイルを指定します。以下に例を示します。# ipa-cacert-manage renew --external-cert-file=/tmp/servercert20110601.pem --external-cert-file=/tmp/cacert.pem
- 更新された CA 証明書と外部 CA 証明書チェーンが LDAP 証明書ストアと、
/etc/pki/pki-tomcat/alias/
NSS データベースに存在するようになりました。 - すべてのサーバーとクライアントで
ipa-certupdate
ユーティリティーを実行し、LDAP から新しい証明書に関する情報で更新します。すべてのサーバーとクライアントでipa-certupdate
を実行する必要があります。重要証明書を手動でインストールした後は、常にipa-certupdate
を実行します。これがない場合、証明書は他のマシンに配布されません。
更新した証明書が正しくインストールされていることを確認するには、
certutil
ユーティリティーを使用して、データベース内の証明書を表示します。以下に例を示します。
# certutil -L -d /etc/pki/pki-tomcat/alias/
26.2.3. IdM がオフライン時に期限切れのシステム証明書の更新
システム証明書の期限が切れると、IdM が起動できません。IdM は、
ipa-cert-fix
ツールを使用して、このような状況であってもシステム証明書の更新に対応します。
前提条件
- ホストで ipactl start --ignore-service-failures コマンドを入力して、LDAP サービスが実行中であることを確認する。
手順26.1 IdM サーバーで期限切れのシステム証明書の更新
- IdM ドメインの CA で、以下を行います。
- Ipa-cert-fix ユーティリティーを起動してシステムを調整し、期限切れの証明書をリスト表示します。
# ipa-cert-fix ... The following certificates will be renewed: Dogtag sslserver certificate: Subject: CN=ca1.example.com,O=EXAMPLE.COM 201905222205 Serial: 13 Expires: 2019-05-12 05:55:47 ... Enter "yes" to proceed:
- 更新プロセスを開始するには、yes を入力します。
Enter "yes" to proceed: yes Proceeding. Renewed Dogtag sslserver certificate: Subject: CN=ca1.example.com,O=EXAMPLE.COM 201905222205 Serial: 268369925 Expires: 2021-08-14 02:19:33 ... Becoming renewal master. The ipa-cert-fix command was successful
ipa-cert-fix
が期限切れの証明書をすべて更新する前に、最大 1 分かかる場合があります。注記更新マスターではない CA ホストで ipa-cert-fix ユーティリティーを実行し、ユーティリティーが共有証明書を更新すると、このホストはドメインの新しい更新マスターになります。不整合を避けるために、ドメインには常に更新マスターを 1 つだけ設定する必要があります。 - 必要に応じて、すべてのサービスが実行中であることを確認します。
# ipactl status Directory Service: RUNNING krb5kdc Service: RUNNING kadmin Service: RUNNING httpd Service: RUNNING ipa-custodia Service: RUNNING pki-tomcatd Service: RUNNING ipa-otpd Service: RUNNING ipa: INFO: The ipactl command was successful
- IdM ドメインの他のサーバーの場合:
--force
パラメーターを使用して IdM を再起動します。# ipactl restart --force
--force
パラメーターを使用すると、ipactl
ユーティリティーは個々の起動失敗を無視します。たとえば、サーバーが CA もあると、pki-tomcat
サービスが起動に失敗します。--force
パラメーターを使用しているため、これが予想され、無視されます。- 再起動後に、
certmonger
サービスが証明書を更新することを確認します。# getcert list | egrep '^Request|status:|subject:' Request ID '20190522120745': status: MONITORING subject: CN=IPA RA,O=EXAMPLE.COM 201905222205 Request ID '20190522120834': status: MONITORING subject: CN=Certificate Authority,O=EXAMPLE.COM 201905222205 ...
certmonger
がレプリカ上で共有証明書を更新する前に時間がかかる場合があることに注意してください。 - サーバーも CA の場合、上記のコマンドは、
pki-tomcat
サービスが使用する証明書の CA_UNREACHABLE を報告します。Request ID '20190522120835': status: CA_UNREACHABLE subject: CN=ca2.example.com,O=EXAMPLE.COM 201905222205 ...
この証明書を更新するには、ipa-cert-fix
ユーティリティーを使用します。# ipa-cert-fix Dogtag sslserver certificate: Subject: CN=ca2.example.com,O=EXAMPLE.COM Serial: 3 Expires: 2019-05-11 12:07:11 Enter "yes" to proceed: yes Proceeding. Renewed Dogtag sslserver certificate: Subject: CN=ca2.example.com,O=EXAMPLE.COM 201905222205 Serial: 15 Expires: 2019-08-14 04:25:05 The ipa-cert-fix command was successful