Kubernetes是一个非常强大的容器管理工具。如果您使用容器的时间足够长,您就会知道安全必须在应用程序和服务的部署中扮演中心角色。如果不锁定这些容器,可能会对您的网络造成严重破坏。
你肯定不想那样。
那么,你能做什么呢?对于Kubernetes,您应该考虑建立pod安全策略。
参见:公司在自己的数据中心里保存的10件东西(TechRepublic下载)
如果你是Kubernetes的新手,你可能不知道豆荚是什么。简单地说,Kubernetes pod是组成容器的过程的集合,例如:
存储资源
唯一网络IP地址
控制容器应如何运行的选项
换句话说,pod是一个部署单元——单个容器或多个容器一起工作。
现在您已经理解了什么是pod,让我们看看如何制定安全策略。
Kubernetes pod安全策略是控制pod规范安全性的资源。使用PodSecurityPolicy对象定义,你可以控制的事情如下:
运行特权容器的能力
特权升级
对卷类型的访问
访问主机文件系统
主机网络的使用
但是如何定义这个政策呢?与Kubernetes中的几乎所有内容一样,这是在YAML文件中定义的。
让我们创建一个Kubernetes pod安全策略,该策略阻止创建特权pod并控制对卷的访问。首先,我们必须创建YAML文件。从终端窗口,发出命令:
在该文件中,粘贴以下内容:
在该文件中,我们使用以下代码来阻止创建特权pod:
我们还允许以下(通过RunAsAny规则):
SeLinux-允许任何用户控制在窗格中的SELinux
Linux组——补充组
允许用户以不同的用户名运行容器入口点
支持所有权管理的卷
保存并关闭文件。
现在我们必须实施这项政策。这是通过命令完成的:
该命令将报告:
在任何时候,您都可以修改策略YAML文件并运行相同的命令来重新配置策略。
检查,以确保你的政策是可用的发出命令:
输出将列出策略的详细信息(图A)。
图一个
我们的Kubernetes pod安全政策已经建立。
既然您已经创建了策略,那么如何分配它呢?这是使用基于角色的访问控制(RBAC)完成的。使用以下命令为策略创建RBAC配置:
在该文件中,粘贴以下内容:
上面的文件将创建一个集群范围的角色psp,它可以使用我们的新策略psp。这还将创建一个集群范围的角色绑定,允许每个经过身份验证的用户访问psp:psp角色。
保存并关闭文件。使用以下命令创建此策略:
我们现在已经创建了一个策略和一个RBAC控件。让我们看看我们现在是否可以使用这个新政策。发出该命令:
输出应该显示“yes”。
当然,它应该说“是”,因为我是一个管理用户。但是如果我们在任何用户上测试它呢?使用以下命令执行:
您现在应该在响应中看到“no”。
您已经创建了一个Kubernetes pod安全策略,使用RBAC分配它,并对它进行了测试,以确保该策略确实有效。通过部署Kubernetes容器,您离获得更多安全性又近了一步。
通过及时了解最新的网络安全新闻、解决方案和最佳实践,加强您的组织的IT安全防御。星期二和星期四送货