12.2. certmonger を使用した自己署名証明書の要求
certmonger
で証明書を要求するには、getcert request ユーティリティーを使用します。
証明書とキーは、証明書のニックネームで識別される
.pem
拡張子または NSS データベースを持つプレーンテキストファイルにローカルに保存されます。証明書をリクエストする際には、リクエストで証明書の保存場所とニックネームを特定します。以下に例を示します。
[root@server ~]# selfsign-getcert request -d /etc/pki/nssdb -n Server-Cert
/etc/pki/nssdb
ファイルはグローバル NSS データベースで、Server-Cert
はこの証明書のニックネームです。証明書のニックネームはこのデータベース内で一意のものである必要があります。
証明書を生成するコマンドで提供できるオプションは、要求している証明書の種類、最終的な証明書に必要な設定、およびその他の設定によって異なります。
-r
は、キーペアがすでに存在する場合に失効日が近づくと証明書を自動的に更新します。このオプションはデフォルトで使用されます。-f
は、指定したファイルに証明書を保存します。-k
は、鍵を特定ファイルに保存するか、鍵のファイルが存在する場合は、ファイル内の鍵を使用します。-K
は、証明書を使用するサービスの Kerberos プリンシパル名を指定します。-K
は、IdM サーバーから証明書を要求する際に必要であり、自己署名の証明書またはローカルで署名された証明書を要求する場合は任意になります。-N
はサブジェクト名を指定します。-d
は、DNS ドメイン名をsubjectAltName
値として証明書に含めるよう要求します。-u
は、拡張キー使用フラグを設定します。-A
は、subjectAltName
値として証明書に含まれる IP アドレスを要求します。-I
はタスクの名前を設定します。certmonger
はこの名前を使用して、ストレージの場所と要求オプションの組み合わせを参照し、getcert list コマンドの出力にも表示されます。このオプションを指定しないと、certmonger
はタスクに自動生成された名前を割り当てます。
IdM のような実際の CA は、CA 独自のポリシーに従って、
-K
、-N
、-D
、-U
、および -A
オプションを使用して署名要求で指定したものをすべて無視できます。たとえば、IdM では、-K
と -N
がローカルホスト名に合意する必要があります。selfsign-getcert コマンドおよび local-getcert コマンドを使用して生成される証明書は、ポリシーを強制しないため、指定するオプションに同意します。
例12.1 サービスにおける certmonger の使用
[root@server ~]# selfsign-getcert request -f /etc/httpd/conf/ssl.crt/server.crt -k /etc/httpd/conf/ssl.key/server.key -N CN=`hostname --fqdn` -D `hostname` -U id-kp-serverAuth