This documentation is for a release that is no longer maintained
See documentation for the latest supported version.3.7.3.2. インポートされた証明書に関する問題のトラブルシューティング
証明書を追加した後に問題が発生した場合は、OpenShift Dev Spaces のインスタンスレベルおよびワークスペースレベルで指定された値を確認します。
OpenShift Dev Spaces インスタンスレベルでのインポート済み証明書の検証
OpenShift Dev Spaces Operator デプロイメントの場合、
CheCluster
が配置されている namespace には、正しいコンテンツを含む、ラベル付きのConfigMap
オブジェクトが含まれます。oc get cm --selector=app.kubernetes.io/component=ca-bundle,app.kubernetes.io/part-of=che.eclipse.org -n openshift-devspaces
$ oc get cm --selector=app.kubernetes.io/component=ca-bundle,app.kubernetes.io/part-of=che.eclipse.org -n openshift-devspaces
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下を入力して
ConfigMap
オブジェクトの内容を確認します。oc get cm <name> -n openshift-devspaces -o yaml
$ oc get cm <name> -n openshift-devspaces -o yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow OpenShift Dev Spaces Pod ボリューム一覧には、
ca-certs-merged
ConfigMap
オブジェクトをデータソースとして使用するボリュームが含まれます。OpenShift Dev Spaces Pod のボリュームのリストを取得するには:oc get pod -l app.kubernetes.io/component=devspaces -o "jsonpath={.items[0].spec.volumes}" -n openshift-devspaces
$ oc get pod -l app.kubernetes.io/component=devspaces -o "jsonpath={.items[0].spec.volumes}" -n openshift-devspaces
Copy to Clipboard Copied! Toggle word wrap Toggle overflow OpenShift Dev Spaces は、証明書を OpenShift Dev Spaces サーバーコンテナーの
/public-certs/
フォルダーにマウントします。このフォルダー内のファイルのリストを表示するには、次のように入力します。oc exec -t deploy/devspaces -n openshift-devspaces -- ls /public-certs/
$ oc exec -t deploy/devspaces -n openshift-devspaces -- ls /public-certs/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow OpenShift Dev Spaces サーバーログに、設定された OpenShift Dev Spaces 証明書など、Java トラストストアに追加されたすべての証明書に対する行があります。次の表示:
oc logs deploy/devspaces -n openshift-devspaces
$ oc logs deploy/devspaces -n openshift-devspaces
Copy to Clipboard Copied! Toggle word wrap Toggle overflow OpenShift Dev Spaces サーバーの Java トラストストアに証明書が含まれます。証明書の SHA1 フィンガープリントは、トラストストアに含まれる証明書の SHA1 リストにあります。リストを表示します。
oc exec -t deploy/devspaces -n openshift-devspaces -- keytool -list -keystore /home/user/cacerts
$ oc exec -t deploy/devspaces -n openshift-devspaces -- keytool -list -keystore /home/user/cacerts Your keystore contains 141 entries: + (...)
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ローカルファイルシステムの証明書の SHA1 ハッシュを取得するには、以下のコマンドを実行します。
openssl x509 -in <certificate-file-path> -fingerprint -noout
$ openssl x509 -in <certificate-file-path> -fingerprint -noout SHA1 Fingerprint=3F:DA:BF:E7:A7:A7:90:62:CA:CF:C7:55:0E:1D:7D:05:16:7D:45:60
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
ワークスペースレベルでのインポート済み証明書の検証
- ワークスペースを起動し、これが作成されたプロジェクト名を取得し、ワークスペースが開始するまで待機します。
ワークスペース Pod の名前を取得します。
oc get pods -o=jsonpath='{.items[0].metadata.name}' -n <workspace namespace> | grep '^workspace.*'
$ oc get pods -o=jsonpath='{.items[0].metadata.name}' -n <workspace namespace> | grep '^workspace.*'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ワークスペース Pod 内の Che-Theia IDE コンテナーの名前を取得します。
oc get -o json pod <workspace pod name> -n <workspace namespace> | \ jq -r '.spec.containers[] | select(.name | startswith("theia-ide")).name'
$ oc get -o json pod <workspace pod name> -n <workspace namespace> | \ jq -r '.spec.containers[] | select(.name | startswith("theia-ide")).name'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ワークスペース namespace 内で
che-trusted-ca-certs
ConfigMap
オブジェクトを検索します。oc get cm che-trusted-ca-certs -n <workspace namespace>
$ oc get cm che-trusted-ca-certs -n <workspace namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow che-trusted-ca-certs
ConfigMap
オブジェクトのエントリーに、以前に追加した別のエントリーがすべて含まれていることを確認します。さらに、予約されているca-bundle.crt
エントリーが含まれる場合があります。エントリーを表示します。oc get cm che-trusted-ca-certs -n <workspace namespace> -o json | jq -r '.data | keys[]'
$ oc get cm che-trusted-ca-certs -n <workspace namespace> -o json | jq -r '.data | keys[]' ca-bundle.crt source-config-map-name.data-key.crt
Copy to Clipboard Copied! Toggle word wrap Toggle overflow che-trusted-ca-certs
ConfigMap
オブジェクトがワークスペース Pod のボリュームとして追加されていることを確認します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow ボリュームがコンテナー (とくに Che-Theia IDE コンテナー) にマウントされていることを確認します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Che-Theia IDE コンテナーの
/public-certs
フォルダーを検査し、その内容がcustom-certs
ConfigMap
オブジェクトのエントリーの一覧と一致するかどうかを確認します。oc exec <workspace pod name> -c <theia ide container name> -n <workspace namespace> -- ls /public-certs
$ oc exec <workspace pod name> -c <theia ide container name> -n <workspace namespace> -- ls /public-certs ca-bundle.crt source-config-map-name.data-key.crt
Copy to Clipboard Copied! Toggle word wrap Toggle overflow