プロファイルの適用範囲: レベル 1
読み取り専用ポートを無効にする。
Kubeletプロセスは、メインのKubelet APIに加えて読み取り専用のAPIを提供します。この読み取り専用APIには認証されていないアクセスが提供されており、クラスタに関する潜在的に機密情報を取得する可能性があります。
注意デフォルトでは、OpenShift 4.5以前では
--read-only-port は使用されません。OpenShift 4.6以降では、kubelet-read-only-port は0に設定されています。 |
影響
読み取り専用ポートの削除には、それを使用していたすべてのサービスをメインのKubelet APIを使用するように再構成する必要があります。
監査
OpenShift 4では、kubeletはMachine Config Operatorによって管理されています。kubeletの設定ファイルは
/etc/kubernetes/kubelet.conf
にあります。OpenShiftは、OpenShift 4.6以降でread-only-port
kubeletフラグを0に設定することにより、すべてのノードで読み取り専用ポート (10255) を無効にします。次のコマンドを実行して、Kubernetes API サーバ構成マップの
kubelet-read-only-port
が 0 に設定されていることを確認します。oc -n openshift-kube-apiserver get cm config -o json | jq -r '.data."config.yaml"' | yq '.apiServerArguments."kubelet-read-only-port"'
出力が次のように0を含むリストであることを確認してください:
[ "0" ]
修復
以前のバージョンの OpenShift 4 では、
read-only-port
引数は使用されていません。OpenShift ドキュメントの指示に従って、kubeletconfig
CRD を作成し、kubelet-read-only-port
を 0 に設定します。