プロファイル適用性: レベル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) を無効にしています。次のコマンドを実行して、KubernetesAPIサーバ構成マップの
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ドキュメントの指示に従ってkubeletconfigCRDを作成し、kubelet-read-only-portを0に設定してください。
