Red Hat Training
A Red Hat training course is available for Red Hat Virtualization
7.7. SHA-1 証明書の SHA-256 証明書への置き換え
Red Hat Virtualization 4.2 では SHA-256 署名が使用され、SHA-1 よりセキュアに SSL 証明書に署名することができます。新たにインストールした 4.2 システムでは、Red Hat Virtualization の公開鍵インフラストラクチャー (PKI) が SHA-256 署名を使用できるようにするのに、特別な手順は必要ありません。ただし、アップグレードしたシステムでは、以下のオプションのどちらかを実施することを推奨します。
- 管理ポータルに接続する際に警告メッセージがブラウザーに表示されないようにする。この警告はポップアップウィンドウとして、またはブラウザーの Web コンソール ウィンドウに表示されます。アップグレード後にすでに Red Hat Virtualization Manager の Apache SSL 証明書を置き換えている場合には、このオプションは必要ありません。ただし、証明書が SHA-1 で署名されている場合には、それを SHA-256 証明書に置き換える必要があります。詳細については、『管理ガイド』の「Red Hat Virtualization Manager の SSL/TLS 証明書の変更」を参照してください。
- システム全体の SHA-1 証明書を SHA-256 証明書に置き換える。
ブラウザーでの警告メッセージ表示の防止
- Manager マシンに root ユーザーとしてログインします。
/etc/pki/ovirt-engine/openssl.conf に
default_md = sha256
行が含まれているかどうかを確認します。# cat /etc/pki/ovirt-engine/openssl.conf
まだ
default_md = sha1
が含まれていたら、既存の設定のバックアップを作成してデフォルトをsha256
に変更します。# cp -p /etc/pki/ovirt-engine/openssl.conf /etc/pki/ovirt-engine/openssl.conf."$(date +"%Y%m%d%H%M%S")" # sed -i 's/^default_md = sha1/default_md = sha256/' /etc/pki/ovirt-engine/openssl.conf
署名し直す必要のある証明書を定義します。
# names="apache"
Manager で Apache 証明書を署名し直します。
for name in $names; do subject="$( openssl \ x509 \ -in /etc/pki/ovirt-engine/certs/"${name}".cer \ -noout \ -subject \ | sed \ 's;subject= \(.*\);\1;' \ )" /usr/share/ovirt-engine/bin/pki-enroll-pkcs12.sh \ --name="${name}" \ --password=mypass \ --subject="${subject}" \ --keep-key done
httpd サービスを再起動します。
# systemctl restart httpd
- 管理ポータルに接続して、警告が表示されなくなったことを確認します。
-
以前に CA または https 証明書をブラウザーにインポートしている場合は、その証明書を探してブラウザーから削除し、新しい CA 証明書をインポートし直します。ブラウザーから提供される手順に従って、認証局の証明書をインストールしてください。認証局の証明書を取得するには、
http://your-manager-fqdn/ovirt-engine/services/pki-resource?resource=ca-certificate&format=X509-PEM-CA
にアクセスします (your-manager-fqdn は、完全修飾ドメイン名 (FQDN) に置き換えてください)。
すべての署名済み証明書の SHA-256 への置き換え
- Manager マシンに root ユーザーとしてログインします。
/etc/pki/ovirt-engine/openssl.conf に
default_md = sha256
行が含まれているかどうかを確認します。# cat /etc/pki/ovirt-engine/openssl.conf
まだ
default_md = sha1
が含まれていたら、既存の設定のバックアップを作成してデフォルトをsha256
に変更します。# cp -p /etc/pki/ovirt-engine/openssl.conf /etc/pki/ovirt-engine/openssl.conf."$(date +"%Y%m%d%H%M%S")" # sed -i 's/^default_md = sha1/default_md = sha256/' /etc/pki/ovirt-engine/openssl.conf
CA 証明書のバックアップを作成して ca.pem.new に新しい証明書を作成し、CA 証明書を署名し直します。
# cp -p /etc/pki/ovirt-engine/private/ca.pem /etc/pki/ovirt-engine/private/ca.pem."$(date +"%Y%m%d%H%M%S")" # openssl x509 -signkey /etc/pki/ovirt-engine/private/ca.pem -in /etc/pki/ovirt-engine/ca.pem -out /etc/pki/ovirt-engine/ca.pem.new -days 3650 -sha256
既存の証明書を新しい証明書に置き換えます。
# mv /etc/pki/ovirt-engine/ca.pem.new /etc/pki/ovirt-engine/ca.pem
署名し直す必要のある証明書を定義します。
# names="engine apache websocket-proxy jboss imageio-proxy"
アップグレード後に Red Hat Virtualization Manager SSL 証明書を置き換えている場合は、上記のコマンドの代わりに以下のコマンドを実行します。
# names="engine websocket-proxy jboss imageio-proxy"
詳細については、『管理ガイド』の「Red Hat Virtualization Manager の SSL/TLS 証明書の変更」を参照してください。
Manager で証明書を署名し直します。
for name in $names; do subject="$( openssl \ x509 \ -in /etc/pki/ovirt-engine/certs/"${name}".cer \ -noout \ -subject \ | sed \ 's;subject= \(.*\);\1;' \ )" /usr/share/ovirt-engine/bin/pki-enroll-pkcs12.sh \ --name="${name}" \ --password=mypass \ --subject="${subject}" \ --keep-key done
以下のサービスを再起動します。
# systemctl restart httpd # systemctl restart ovirt-engine # systemctl restart ovirt-websocket-proxy # systemctl restart ovirt-imageio-proxy
- 管理ポータルに接続して、警告が表示されなくなったことを確認します。
-
以前に CA または https 証明書をブラウザーにインポートしている場合は、その証明書を探してブラウザーから削除し、新しい CA 証明書をインポートし直します。ブラウザーから提供される手順に従って、認証局の証明書をインストールしてください。認証局の証明書を取得するには、
http://your-manager-fqdn/ovirt-engine/services/pki-resource?resource=ca-certificate&format=X509-PEM-CA
にアクセスします (your-manager-fqdn は、完全修飾ドメイン名 (FQDN) に置き換えてください)。 ホストで証明書を登録します。それぞれのホストについて以下の手順を繰り返します。
- 管理ポータルで コンピュート → ホスト をクリックします。
- ホストを選択し、管理 → メンテナンス をクリックします。
- ホストがメンテナンスモードに変わったら、インストール → 証明書を登録 をクリックします。
- 管理 → アクティブ化 をクリックします。