1.3. RHOSP エンドポイントをスキャンしてレガシー HTTPS 証明書を探す
OpenShift Container Platform 4.10 以降、HTTPS 証明書にはサブジェクト代替名 (SAN) フィールドが含まれている必要があります。次のスクリプトを実行して、Red Hat OpenStack Platform (RHOSP) カタログ内の各 HTTPS エンドポイントをスキャンし、CommonName
フィールドのみを含むレガシー証明書を探します。
OpenShift Container Platform は、インストールまたは更新の前に、基盤となる RHOSP インフラストラクチャーのレガシー証明書をチェックしません。提供されているスクリプトを使用して、これらの証明書をご自身で確認してください。クラスターをインストールまたは更新する前にレガシー証明書を更新しないと、クラスターが機能しなくなります。
前提条件
スクリプトを実行するマシンに、次のソフトウェアをインストールします。
- Bash バージョン 4.0 以降
-
grep
- OpenStack クライアント
-
jq
- OpenSSL バージョン 1.1.1l 以降
- ターゲットクラウドの RHOSP クレデンシャルをマシンに入力します。
手順
次のスクリプトをマシンに保存します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - スクリプトを実行します。
-
スクリプトが
INVALID
と報告する証明書を、SAN フィールドを含む証明書に置き換えます。
OpenShift Container Platform 4.10 をインストールする前、またはクラスターをそのバージョンに更新する前に、すべてのレガシー HTTPS 証明書を置き換える必要があります。レガシー証明書は、次のメッセージで拒否されます。
x509: certificate relies on legacy Common Name field, use SANs instead
x509: certificate relies on legacy Common Name field, use SANs instead
1.3.1. RHOSP エンドポイントをスキャンしてレガシー HTTPS 証明書を手動で探す リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Container Platform 4.10 以降、HTTPS 証明書にはサブジェクト代替名 (SAN) フィールドが含まれている必要があります。「レガシー HTTPS 証明書の RHOSP エンドポイントのスキャン」にリストされている前提条件ツールにアクセスできない場合は、次の手順を実行して、Red Hat OpenStack Platform (RHOSP) カタログ内の各 HTTPS エンドポイントをスキャンして、CommonName
フィールドのみを含むレガシー証明書の RHOSP カタログで各 HTTPS エンドポイントをスキャンします。
OpenShift Container Platform は、インストールまたは更新の前に、基盤となる RHOSP インフラストラクチャーのレガシー証明書をチェックしません。これらの証明書を自分で確認するには、次の手順を使用します。クラスターをインストールまたは更新する前にレガシー証明書を更新しないと、クラスターが機能しなくなります。
手順
コマンドラインで次のコマンドを実行して、RHOSP パブリックエンドポイントの URL を表示します。
openstack catalog list
$ openstack catalog list
Copy to Clipboard Copied! Toggle word wrap Toggle overflow コマンドが返す各 HTTPS エンドポイントの URL を記録します。
各パブリックエンドポイントについて、ホストとポートをメモします。
ヒントスキーム、ポート、およびパスを削除して、エンドポイントのホストを決定します。
エンドポイントごとに次のコマンドを実行して、証明書の SAN フィールドを抽出します。
host
変数を設定します。host=<host_name>
$ host=<host_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow port
変数を設定します。port=<port_number>
$ port=<port_number>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow エンドポイントの URL にポートがない場合は、値
443
を使用します。証明書の SAN フィールドを取得します。
openssl s_client -showcerts -servername "$host" -connect "$host:$port" </dev/null 2>/dev/null \ | openssl x509 -noout -ext subjectAltName
$ openssl s_client -showcerts -servername "$host" -connect "$host:$port" </dev/null 2>/dev/null \ | openssl x509 -noout -ext subjectAltName
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
X509v3 Subject Alternative Name: DNS:your.host.example.net
X509v3 Subject Alternative Name: DNS:your.host.example.net
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 各エンドポイントについて、前の例に似た出力を探します。エンドポイントの出力がない場合、そのエンドポイントの証明書は無効であるため、再発行する必要があります。
OpenShift Container Platform 4.10 をインストールする前、またはクラスターをそのバージョンに更新する前に、すべてのレガシー HTTPS 証明書を置き換える必要があります。従来の証明書は拒否され、次のメッセージが表示されます。
x509: certificate relies on legacy Common Name field, use SANs instead
x509: certificate relies on legacy Common Name field, use SANs instead