コンテンツにスキップ

0423-k8s-client-ca-kubelet Kubelet クライアント CA 証明書パラメータが適切に設定されていることを確認する


ルール ID

  • 0423-k8s-client-ca

カテゴリ

  • コンテナ

レベル

  • info

互換バージョン

  • Linux

説明

  • Kubelet を使用する場合、証明書を使用して Kubelet 認証を有効にします。

スキャン頻度

  • 0 */30 * * *

理論的根拠

  • デフォルトでは、Kubelet は送信元からの明示的な承認チェックを必要とせずに、すべての認証済みリクエスト(匿名リクエストも含む)を許可します。信頼できないネットワークやパブリックネットワーク上で実行する場合、この動作は安全ではないため、制限する必要があります。

リスク項目

  • コンテナセキュリティ

監査方法

  • 以下のコマンドを実行して確認します:
    ps -ef | grep kubelet |grep client-ca-file
    

修復方法

  • 以下のコマンドを実行します:
    #> vim /etc/systemd/system/kubelet.service.d/10-kubeadm.conf
    
    --client-ca-file=<path/to/client-ca-file> を設定します。 注意:--client-ca-file パラメータが存在する場合は、対応する CA ファイルパスを設定してください。 このパラメータが存在しない場合は、kubelet 起動時に -config で指定された設定ファイルを確認し、 そのファイル内の authentication: x509: clientCAFile 設定項目を確認し、対応するファイルパスを設定してください。 コマンドライン形式で起動された kubelet server の場合は、-config で指定された設定が優先されます。

これらのパラメータを設定し、問題がないことを確認した後、kubelet を再起動します:

systemctl daemon-reload
systemctl restart kubelet.service

影響

  • apiserver で TLS を設定する必要があります。証明書ファイルのパスは、理論上はローカルの CA 証明書である必要があります。一般的には /etc/kubernetes/pki/ca.crt として設定します。

デフォルト値

  • デフォルトでは、--client-ca-file は設定されていません。

参考文献

CIS コントロール

  • なし

フィードバック

このページは役に立ちましたか?