79.4. certmonger を使用したサービスの IdM 証明書の取得
ブラウザーと、IdM クライアントで実行している Web サービスとの間の通信が安全で暗号化されていることを確認するには、TLS 証明書を使用します。サブ CA webserver-ca
が発行する証明書を信頼し、その他の IdM サブ CA は信頼しないように制限して Web ブラウザーを設定する場合にはサブ CA webserver-ca
から Web サービスの TLS 証明書を取得します。
以下の手順に従って、certmonger
を使用して、IdM クライアントで実行しているサービス (HTTP/my_company.idm.example.com
@IDM.EXAMPLE.COM
) の IdM 証明書を取得します。
certmonger
使用して証明書を自動的に要求するということは、certmonger
更新の期限が切れたときに証明書を管理および更新することを意味します。
certmonger
がサービス証明書を要求したときの動作の視覚的な表現については、サービス証明書を要求する certmonger の通信フロー を参照してください。
前提条件
- Web サーバーが、IdM クライアントとして登録されている。
- 手順を実行している IdM クライアントへのルートアクセス権限がある。
- 証明書を要求しているサービスは、前もって IdM に用意する必要はない。
手順
HTTP
サービスが稼働している IdM クライアントmy_company.idm.example.com
で、以下を指定するHTTP/my_company.idm.example.com@IDM.EXAMPLE.COM
プリンシパルに対応するサービスの証明書を要求します。-
証明書は、ローカルの
/etc/pki/tls/certs/httpd.pem
ファイルに保存されます。 -
秘密鍵は、ローカルの
/etc/pki/tls/private/httpd.key
ファイルに保存されます。 -
サブ CA
webserver-ca
は、発行元の認証局になります。 SubjectAltName
の extensionRequest が、my_company.idm.example.com
の DNS 名の署名要求に追加されます。# ipa-getcert request -K HTTP/my_company.idm.example.com -k /etc/pki/tls/private/httpd.key -f /etc/pki/tls/certs/httpd.pem -g 2048 -D my_company.idm.example.com -X webserver-ca -C "systemctl restart httpd" New signing request "20190604065735" added.
上記のコマンドでは、以下のようになります。
-
ipa-getcert request
コマンドは、証明書が IdM CA から取得することを示しています。ipa-getcert request
コマンドは、getcert request -c IPA
のショートカットです。 -
-g
オプションは、生成先のキーのサイズ (設定されていない場合) を指定します。 -
-D
オプションは、要求に追加する DNS 値SubjectAltName
を指定します。 -
-X
オプションは、証明書の発行者が、ipa
ではなくwebserver-ca
でなければならないことを指定します。 -
-C
オプションは、証明書の取得後にhttpd
サービスを再起動するようにcertmonger
に指示します。
-
特定のプロファイルで証明書を発行するように指定する場合は、
-T
オプションを使用します。
注記RHEL 8 は、RHEL 7 で使用されるものとは異なる SSL モジュール (Apache) を使用します。SSL モジュールは、NSS ではなく OpenSSL に依存しています。このため、RHEL 8 では、NSS データベースを使用して
HTTPS
証明書と秘密鍵を保存することができません。-
-
証明書は、ローカルの
必要に応じて、リクエストの状況を確認するには、次のコマンドを実行します。
# ipa-getcert list -f /etc/pki/tls/certs/httpd.pem Number of certificates and requests being tracked: 3. Request ID '20190604065735': status: MONITORING stuck: no key pair storage: type=FILE,location='/etc/pki/tls/private/httpd.key' certificate: type=FILE,location='/etc/pki/tls/certs/httpd.crt' CA: IPA issuer: CN=WEBSERVER,O=IDM.EXAMPLE.COM [...]
この出力は、要求が
MONITORING
状況であることを表しています。これは、証明書が取得されていることを示しています。キーペアと証明書の場所は、要求された場所です。