评估 Kubernetes 中 Docker 的安全性 (+Rancher)



我使用docker-bench评估了 Kubernetes 集群中 Docker 容器的安全配置。我注意到所有 Kubernetes 容器,例如

kube-proxy
kubelet
kube-apiserver
k8s_kube-flannel_canal
k8s_POD_canal
k8s_trident-main_trident-csi
...

根用户身份运行。这有必要吗?

此外,一些 Kubernetes 容器,如k8s_trident-main_tridentkube-proxykubelet以特权模式运行。我想这对于 Kubernetes 正常工作是必要的。

我的问题是:你如何正确评估 Kubernetes 中 Docker 的安全配置?我知道 Kubernetes 涵盖了大多数设置,例如 CPU/内存使用情况、PID cgroup 限制和运行状况检查。但是,现在我不知道我是否可以对Docker的安全配置说些什么,当它通过Kubernetes和Rancher管理时(也使用RancherOS(。重新构建上一个问题:除了强化 Kubernetes 之外,应该采取哪些步骤/控制来强化 Docker?

...以根用户身份运行。这有必要吗?

如果他们中的一些人这样做,你可以假设应该有一个很好的理由。我相信kubernetes的创建者非常熟悉最小特权原则的概念。所以我会说:是的,很可能有必要能够在节点系统上执行所需的操作。但是,可以在此处进行讨论。

例如kubeadm真的需要 root 权限吗?井。。。为了能够执行所有必需的操作,是的。与这个答案比较。

然而,关于以非 root 用户身份运行整个kubernetes集群的想法也出现了。我发现了一个有趣的演示文稿来讨论这个概念。

您在问题中触及了非常广泛的主题,不可能提供单一的正确答案。我会说这是一篇广泛的博客文章甚至电子书(与这本相比(的材料。

此外,一些 Kubernetes 容器,例如k8s_trident-main_tridentkube-proxykubelet跑了进来 特权模式。我想这对于 Kubernetes 工作是必要的 适当地。

如果希望容器也能够在主机系统上执行某些操作,则无法避免特权模式。

您可能还想熟悉官方 kubernetes 文档中的以下文章:

https://kubernetes.io/docs/concepts/security/overview/

https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/

我希望它有所帮助。

相关内容

  • 没有找到相关文章

最新更新