3.2.11. SHA-1 証明書の SHA-256 証明書への置き換え

Red Hat Virtualization 4.4 では SHA-256 署名が使用され、SHA-1 よりセキュアに SSL 証明書に署名することができます。新たにインストールしたシステムでは、Red Hat Virtualization の公開鍵インフラストラクチャー (PKI) が SHA-256 署名を使用できるようにするための特別な手順は必要ありません。

警告

証明書の有効期限が 切れない ようにしてください。有効期限が切れると、環境は応答しなくなり、復元でエラーが発生しやすくなり、時間がかかるプロセスになります。証明書の更新は、Administration GuideRenewing certificates before they expire を参照してください。

ブラウザーでの警告メッセージ表示の防止
  1. Manager マシンに root ユーザーとしてログインします。
  2. /etc/pki/ovirt-engine/openssl.confdefault_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
  3. 署名し直す必要のある証明書を定義します。

    # names="apache"
  4. Manager で、/etc/ovirt-engine/engine.conf.d ディレクトリーと /etc/pki/ovirt-engine ディレクトリーのバックアップを保存し、証明書を再署名します。

    # . /etc/ovirt-engine/engine.conf.d/10-setup-protocols.conf
    # for name in $names; do
        subject="$(
            openssl \
                x509 \
                -in /etc/pki/ovirt-engine/certs/"${name}".cer \
                -noout \
                -subject \
                -nameopt compat \
            | sed \
                's;subject=\(.*\);\1;' \
        )"
       /usr/share/ovirt-engine/bin/pki-enroll-pkcs12.sh \
            --name="${name}" \
            --password=mypass \ <1>
            --subject="${subject}" \
            --san=DNS:"${ENGINE_FQDN}" \
            --keep-key
    done
    このパスワード値を変更しないでください。
  5. httpd サービスを再起動します。

    # systemctl restart httpd
  6. 管理ポータルに接続して、警告が表示されなくなったことを確認します。
  7. 以前に 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 に置き換える
  1. Manager マシンに root ユーザーとしてログインします。
  2. /etc/pki/ovirt-engine/openssl.confdefault_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
  3. 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
  4. 既存の証明書を新しい証明書に置き換えます。

    # mv /etc/pki/ovirt-engine/ca.pem.new /etc/pki/ovirt-engine/ca.pem
  5. 署名し直す必要のある証明書を定義します。

    # names="engine apache websocket-proxy jboss imageio-proxy"

    アップグレード後に Red Hat Virtualization Manager SSL 証明書を置き換えている場合は、上記のコマンドの代わりに以下のコマンドを実行します。

    # names="engine websocket-proxy jboss imageio-proxy"

    詳細は、Administration GuideReplacing the Red Hat Virtualization Manager CA Certificate を参照してください。

  6. Manager で、/etc/ovirt-engine/engine.conf.d ディレクトリーと /etc/pki/ovirt-engine ディレクトリーのバックアップを保存し、証明書を再署名します。

    # . /etc/ovirt-engine/engine.conf.d/10-setup-protocols.conf
    # for name in $names; do
        subject="$(
            openssl \
                x509 \
                -in /etc/pki/ovirt-engine/certs/"${name}".cer \
                -noout \
                -subject \
                -nameopt compat \
            | sed \
                's;subject=\(.*\);\1;' \
        )"
       /usr/share/ovirt-engine/bin/pki-enroll-pkcs12.sh \
            --name="${name}" \
            --password=mypass \ <1>
            --subject="${subject}" \
            --san=DNS:"${ENGINE_FQDN}" \
            --keep-key
    done
    このパスワード値を変更しないでください。
  7. 以下のサービスを再起動します。

    # systemctl restart httpd
    # systemctl restart ovirt-engine
    # systemctl restart ovirt-websocket-proxy
    # systemctl restart ovirt-imageio
  8. 管理ポータルに接続して、警告が表示されなくなったことを確認します。
  9. 以前に CA または https 証明書をブラウザーにインポートしている場合は、その証明書を探してブラウザーから削除し、新しい CA 証明書をインポートし直します。ブラウザーから提供される手順に従って、認証局の証明書をインストールしてください。認証局の証明書を取得するには、http://your-manager-fqdn/ovirt-engine/services/pki-resource?resource=ca-certificate&format=X509-PEM-CA に移動し、your-manager-fqdn を完全修飾ドメイン名 (FQDN) に置き換えます。
  10. ホストで証明書を登録します。それぞれのホストについて以下の手順を繰り返します。

    1. 管理ポータルで コンピュートホスト をクリックします。
    2. ホストを選択し、管理メンテナンス をクリックしてから OK をクリックします。
    3. ホストがメンテナンスモードに変わったら、インストール証明書を登録 をクリックします。
    4. 管理アクティブ化 をクリックします。