Red Hat Training
A Red Hat training course is available for Red Hat Virtualization
付録D Red Hat Virtualization と SSL
D.1. Red Hat Virtualization Manager の SSL/TLS 証明書の変更
/etc/pki ディレクトリーおよびサブディレクトリーのパーミッションと所有権は変更しないでください。/etc/pki ディレクトリーおよび /etc/pki/ovirt-engine ディレクトリーのパーミッションはデフォルトの 755 のままにする必要があります。
自分の組織のサードパーティー CA 証明書を使用し、HTTPS を介して Red Hat Virtualization Manager に接続するユーザーに対して Manager が信頼できるサイトであることを証明する場合には、以下の手順を使用します。
HTTPS 接続用にサードパーティー CA 証明書を使用しても、Manager とホスト間の認証に使用される証明書は影響を受けません。Manager によって生成された自己署名証明書が引き続き使用されます。
前提条件
- サードパーティー CA 証明書。これは、使用する証明書を発行した CA (認証局) の証明書で、PEM ファイルとして提供されます。証明書チェーンは、ルート証明書まで完全でなければなりません。チェーンの順序は重要で、直近の中間証明書からルート証明書まで続いている必要があります。以下の手順では、サードパーティー CA 証明書が /tmp/3rd-party-ca-cert.pem として提供されているものとします。
- Apache httpd に使用する秘密鍵 (パスワードが設定されていないこと)。以下の手順では、/tmp/apache.key として保管されているものとします。
- CA の発行した証明書。以下の手順では、/tmp/apache.cer として保管されているものとします。
CA から秘密鍵と証明書を P12 ファイルで受け取っている場合は、以下の手順を使用して抽出します。その他のファイル形式については、CA に問い合わせてください。秘密鍵と証明書を抽出したら、「Red Hat Virtualization Manager Apache SSL 証明書の置き換え」に進みます。
P12 バンドルからの証明書と秘密鍵の抽出
内部 CA では、内部で生成した鍵および証明書が P12 ファイルとして /etc/pki/ovirt-engine/keys/apache.p12 に保管されます。Red Hat では、新しいファイルを同じ場所に保管することを推奨します。以下の手順では、新しい P12 ファイルを /tmp/apache.p12 と仮定しています。
現在の apache.p12 ファイルのバックアップを作成します。
# cp -p /etc/pki/ovirt-engine/keys/apache.p12 /etc/pki/ovirt-engine/keys/apache.p12.bck
現在のファイルを新しいファイルに置き換えます。
# cp /tmp/apache.p12 /etc/pki/ovirt-engine/keys/apache.p12
秘密鍵および証明書を所定の場所に抽出します。ファイルがパスワードで保護されている場合は、
-passin pass:_password_
を追加する必要があります (password を実際のパスワードに置き換えてください)。# openssl pkcs12 -in /etc/pki/ovirt-engine/keys/apache.p12 -nocerts -nodes > /tmp/apache.key # openssl pkcs12 -in /etc/pki/ovirt-engine/keys/apache.p12 -nokeys > /tmp/apache.cer
Red Hat Virtualization の新規インストールの場合には、以下の手順の全ステップを完了する必要があります。商用署名入り証明書が設定された Red Hat Enterprise Virtualization 3.6 環境からアップグレードした場合は、ステップ 1、8、9 を実行する必要があります。
Red Hat Virtualization Manager Apache SSL 証明書の置き換え
CA 証明書をホスト全体のトラストストアに追加します。
# cp /tmp/3rd-party-ca-cert.pem /etc/pki/ca-trust/source/anchors
# update-ca-trust
Manager は、/etc/pki/ovirt-engine/ca.pem へのシンボリックリンクである /etc/pki/ovirt-engine/apache-ca.pem を使用するように設定されているので、このシンボリックリンクを削除します。
# rm /etc/pki/ovirt-engine/apache-ca.pem
CA 証明書を /etc/pki/ovirt-engine/apache-ca.pem として保存します。
# cp /tmp/3rd-party-ca-cert.pem /etc/pki/ovirt-engine/apache-ca.pem
既存の秘密鍵および証明書のバックアップを作成します。
# cp /etc/pki/ovirt-engine/keys/apache.key.nopass /etc/pki/ovirt-engine/keys/apache.key.nopass.bck # cp /etc/pki/ovirt-engine/certs/apache.cer /etc/pki/ovirt-engine/certs/apache.cer.bck
秘密鍵を所定の場所にコピーします。
# cp /tmp/apache.key /etc/pki/ovirt-engine/keys/apache.key.nopass
証明書を所定の場所にコピーします。
# cp /tmp/apache.cer /etc/pki/ovirt-engine/certs/apache.cer
Apache サーバーを再起動します。
# systemctl restart httpd.service
新しいトラストストアの設定ファイルを作成します。
# vi /etc/ovirt-engine/engine.conf.d/99-custom-truststore.conf
以下の内容を追加して、ファイルを保存します。
ENGINE_HTTPS_PKI_TRUST_STORE="/etc/pki/java/cacerts" ENGINE_HTTPS_PKI_TRUST_STORE_PASSWORD=""
/etc/ovirt-engine/ovirt-websocket-proxy.conf.d/10-setup.conf ファイルを編集します。
# vi /etc/ovirt-engine/ovirt-websocket-proxy.conf.d/10-setup.conf
以下に示す変更を加えてファイルを保存します。
SSL_CERTIFICATE=/etc/pki/ovirt-engine/apache.cer SSL_KEY=/etc/pki/ovirt-engine/keys/apache.key.nopass
ovirt-provider-ovn
サービスを再起動します。# systemctl restart ovirt-provider-ovn.service
ovirt-engine
サービスを再起動します。# systemctl restart ovirt-engine.service
HTTPS トラフィックの暗号化に使用する証明書の信頼性についての警告が表示されることなく、管理ポータルおよび VM ユーザーポータルに接続できるようになりました。