
yuichi1992_west
2023年05月28日に参加
学習履歴詳細
CKS資格学習 Node Metadata Protection
ノードのメタデータ保護の必要性
攻撃者からコントロールプレーンにアクセスされ、ノードに関する情報(IPアドレス、ホスト名等)を取得されないために必要。主にNetworkPolicyやClusterRoleによって保護する。NetworkPolicyの例
コントロールプレーンのIPアドレス取得 kubectl get node controlplane -o jsonpath="{.status.addresses[0].address}" Podからコントロールプレーンへのアクセスを拒否し、メタデータの取得を防ぐ apiVersion: networking.k8s.io/v1 kind: NetworkPolicy metadata: name: deny-metadata namespace: default spec: podSelector: matchLabels: app: app policyTypes: - Egress egress: - to: - ipBlock: cidr: 0.0.0.0/0 except: - <controlplane-ip>/32 # Replace with the actual IP address of the controlplane node
- RBAC(ClusterRole/ClusterRolebinding)の例
特定のユーザやServiceAccoutのみノード状態が見られるようにする。これにより不正なノードのメタデータの不正取得を防ぐ。 kubectl create clusterrole node-viewer --verb=get --verb=list --verb=watch --resource=nodes
- mTLS (相互TLS認証)
Istioの導入等が有効
- 参考文献
https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/
CKS(Certified Kubernetes Security Specialist)
2024年12月01日(日)
1.0時間