ビュー:
プロファイルの適用範囲: レベル 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 に設定します。