17.3. サブシステム証明書の更新
証明書を更新する方法は 2 つあります。証明書を 再生成 すると、元の鍵と元のプロファイルと要求を取得し、新しい有効期間と有効期限で同一の鍵を再作成します。証明書のキーを再入力 すると、最初の証明書要求が元のプロファイルに再送信されますが、新しいキーペアが生成されます。管理者証明書は、キーを再入力することで更新できます。
17.3.1. エンドエンティティーフォームでの証明書のキーの再設定
サブシステム証明書は、元の証明書のシリアル番号を使用して、エンドユーザー登録フォームで直接更新できます。
- 「証明書の更新」 の説明に従って、CA のエンドエンティティー形式で証明書を更新します。これには、更新するサブシステム証明書のシリアル番号が必要です。
- 「証明書システムデータベースでの証明書のインストール」 の説明に従って、証明書をサブシステムのデータベースにインポートします。証明書は、certutil またはコンソールを使用してインポートできます。以下に例を示します。
certutil -A -n "ServerCert cert-example" -t u,u,u -d /var/lib/pki/instance_name/alias -a -i /tmp/example.cert
17.3.2. コンソールでの証明書の更新
Java サブシステムは管理コンソールを使用してサブシステム証明書を更新できます。このプロセスは、新しいサブシステム証明書を要求する (「コンソールを使用した証明書の要求」) のと同じですが、重要な違いの 1 つは新しい鍵を生成するのではなく、既存のキーペア を使用します。
図17.1 サブシステム証明書の更新
証明書を更新したら、データベース (「データベースからの証明書の削除」) から元の証明書を削除します。
17.3.3. certutil を使用した証明書の更新
certutil は、証明書データベースの既存のキーペアを使用して証明書要求を生成するのに使用できます。その後、新しい証明書要求は、通常のプロファイルページで送信して CA で更新された証明書を発行できます。
注記
暗号化および署名証明書は単一のステップで作成されます。ただし、更新プロセスは一度に 1 つの証明書のみを更新します。
証明書ペアで両方の証明書を更新するには、各証明書を個別に更新する必要があります。
- トークンデータベースのパスワードを取得します。
cat /var/lib/pki/instance_name/conf/password.conf internal=263163888660
- 証明書を更新しているインスタンスの証明書データベースディレクトリーを開きます。
cd /var/lib/pki/instance_name/alias
- 更新する証明書のキーとニックネームをリスト表示します。証明書を更新するには、生成に使用されるキーペアと、新しい証明書に指定されたサブジェクト名は、古い証明書の証明書と同じである必要があります。
# certutil -K -d . certutil: Checking token "NSS Certificate DB" in slot "NSS User Private Key and Certificate Services" Enter Password or Pin for "NSS Certificate DB": < 0> rsa 69481646e38a6154dc105960aa24ccf61309d37d caSigningCert cert-pki-tomcat CA
alias
ディレクトリーをバックアップとしてコピーし、証明書データベースから元の証明書を削除します。以下に例を示します。certutil -D -n "ServerCert cert-example" -d .
- 既存の証明書の値にオプションを設定して certutil コマンドを実行します。
certutil -d . -R -n "NSS Certificate DB:cert-pki-tomcat CA" -s "cn=CA Authority,o=Example Domain" -a -o example.req2.txt
新しい証明書とキーのペアの生成と証明書の更新の違いは、-n
オプションの値です。新しいリクエストとキーのペアを生成するには、-k
はキータイプを設定してから-g
で使用します。これは、ビット長を設定します。更新要求では、-n
オプションは証明書のニックネームを使用してセキュリティーデータベースに保存された既存のキーペアにアクセスします。パラメーターの詳細は、certutil(1) の man ページを参照してください。 - 「証明書の要求および受信」 の説明に従って、証明書要求を送信して取得し、インストールします。
17.3.4. システム証明書の更新
Certificate System は、PKI サーバーの実行中にシステム証明書をオンラインに自動的に更新しません。ただし、システム証明書の期限が切れると、証明書システムが起動できません。
システム証明書を更新するには、以下のコマンドを実行します。
- システム証明書の有効期限が切れている場合は、以下を行います。
- 一時証明書を作成します。
# pki-server cert-create sslserver --temp
- Certificate System の Network Security Services (NSS) データベースに一時証明書をインポートします。
# pki-server cert-import sslserver
- Certificate System を開始します。
# pki-server start instance_name
- 証明書を表示し、期限切れのシステム証明書の ID をメモします。
# pki-server cert-find
- 新しい永続的な証明書を作成します。
# pki-server cert-create certificate_ID
- Certificate System を停止します。
# pki-server stop instance_name
- 新しい証明書をインポートして、期限切れの証明書を置き換えます。
# pki-server cert-import certificate_ID
- Certificate System を開始します。
# pki-server start instance_name