11.4. Web コンソールまたは CLI 用のカスタム証明書の設定
Web コンソールおよび CLI 用のカスタム証明書は、マスター設定ファイル
の servingInfo セクションで指定できます。
-
servingInfo.namedCertificates
セクションでは、Web コンソール用のカスタム証明書を指定します。 -
servingInfo
セクションでは、CLI およびその他の API 呼び出し用のカスタム証明書を指定します。
この方法で複数の証明書を設定し、それぞれの証明書を 複数のホスト名、複数のルーター、または OpenShift Container Platform イメージレジストリー に関連付けることができます。
デフォルトの証明書は、namedCertificates
のほかにも servingInfo.certFile
および servingInfo.keyFile
設定セクションに設定する必要があります。
namedCertificates
セクションは、/etc/origin/master/master-config.yaml ファイルの masterPublicURL
および oauthConfig.assetPublicURL
設定に関連付けられたホスト名についてのみ設定する必要があります。masterURL
に関連付けられたホスト名にカスタム提供証明書を使用すると、インフラストラクチャーコンポーネントが内部の masterURL
ホストを使用してマスター API と通信しようとするため、TLS エラーが発生します。
カスタム証明書の設定
servingInfo: logoutURL: "" masterPublicURL: https://openshift.example.com:8443 publicURL: https://openshift.example.com:8443/console/ bindAddress: 0.0.0.0:8443 bindNetwork: tcp4 certFile: master.server.crt 1 clientCA: "" keyFile: master.server.key 2 maxRequestsInFlight: 0 requestTimeoutSeconds: 0 namedCertificates: - certFile: wildcard.example.com.crt 3 keyFile: wildcard.example.com.key 4 names: - "openshift.example.com" metricsPublicURL: "https://metrics.os.example.com/hawkular/metrics"
Ansible インベントリーファイル
(デフォルトでは /etc/ansible/hosts
) の openshift_master_cluster_public_hostname パラメーターと openshift_master_cluster_hostname
パラメーターは異なっていなければなりません。これらが同じであると、名前付き証明書が失敗し、証明書の再インストールが必要になります。
# Native HA with External LB VIPs openshift_master_cluster_hostname=internal.paas.example.com openshift_master_cluster_public_hostname=external.paas.example.com
OpenShift Container Platform で DNS を使用する方法の詳細は、DNS のインストールの前提条件 を参照してください。
この方法では、OpenShift Container Platform によって生成される自己署名証明書を利用して、必要に応じて信頼できるカスタム証明書を個々のコンポーネントに追加できます。
内部インフラストラクチャーの証明書は自己署名のままであることに注意してください。これは一部のセキュリティーチームや PKI チームから不適切な使用法と見なされる場合があります。ただし、これらの証明書を信頼するクライアントはクラスター内のその他のコンポーネントだけであるため、これに伴うリスクは最小限です。 外部のユーザーとシステムはすべて、信頼できるカスタム証明書を使用します。
相対パスは、マスター設定ファイルの場所に基づいて解決されます。設定の変更が反映されるようにサーバーを再起動します。