图片来源:Pete Linforth来自Pixabay
Kubernetes安全和加固指南
[
](piotrzan.medium.com/?source=pos…)
8月4日 - 4分钟阅读
文档、工具、指南
简介
在网络安全的世界里,你最不希望看到的就是在你身上画上一个目标。
Kubernetes是一个复杂的分布式系统,具有同样复杂的安全要求。硬化和保护Kubernetes需要专业知识、经验和勤奋,这在市场上不容易找到。
每一点行之有效的指导、提高对安全重要性的认识或面向安全的工具都是极其宝贵的。
在这篇文章中,我们要看一下云原生和Kubernetes安全的模式。这些模式是基于两个有趣的安全相关出版物,一个来自国家安全局(NSA),另一个来自云原生计算基金会(CNCF)。
Kubernetes的加固和安全指导
有几个可靠的来源可以了解Kubernetes的安全和加固的最佳实践。我与这些公司都没有关系,我只是认为他们在安全领域的产品和内容是有用的,而且考虑得很周到。
- 美国国家安全局(NSA)发布了《Kubernetes加固指南》。这份文件提供了加固Kubernetes集群的实用建议。
- 云原生安全白皮书》于去年11月发布。这份文件描述了云原生应用程序和基础设施组件(如Kubernetes)的整个生命周期的云原生安全。
- Sysdig是一家专门从事Kubernetes安全的公司。他们创建了Falco,一个云原生运行时威胁检测引擎。他们的网页提供了很多关于安全的有用链接和材料。
- Aqua Security。与Sysdig类似,有很多开源工具,如trivy、kube-bench等。
- Synk。开发者至上的云原生应用安全产品,用于监测和补救Docker和Kubernetes的安全问题。
基础知识:云原生系统的4C
在我们继续仔细研究这些出版物的建议和发现之前,让我们提醒一下云原生安全的基本心理模型。
想想看,云原生安全边界由4个不同的层次组成。从外层到最里面的一层。
- 云:公共的、私人的或内部的,这是你所有的基础设施,包括Kubernetes,被托管的地方。
- 集群:管理或自我托管的Kubernetes集群
- 容器:运行时结构,如容器或豆荚托管你的应用程序和工作负载
- 代码:你的应用程序、服务器或其他自定义代码,通常执行业务逻辑或进行计算
源于此。作者
国家安全局的报告摘要
深入挖掘Kubernetes的安全性,让我们看看NSA发布的Kubernetes加固指导文件的关键建议摘要。
来源:https://media.defense.gov/2021/Aug/03/2002820425/-1/-1/1/CTR_KUBERNETES%20HARDENING%20GUIDANCE.PDF
这些建议抓住了Kubernetes攻击面的关键方面。
- 工作负载:pod的运行时安全、镜像的构建时安全、pod执行方式的错误配置、缺乏安全背景。
- 网络:对资源的访问、流量加密、进程隔离、资源间的安全通信
- 集群访问:对集群的访问、集群操作、RBAC
- 可观察性:日志记录、实时监控和审计
云原生安全白皮书的核心概念
云原生安全白皮书以这些核心安全概念作为结论。
你可以看到NSA加固指南和这份文件如何从不同方面描述相同的安全问题。
- 工作负载:强调工作负载的不可更改性
- 集群访问和网络:外部访问和进程间通信
- **服务的更高可用性:**通过冗余和分布式架构
- 可观察性 ,强调变化跟踪和审计
我想了解更多
如果你想将Kubernetes的安全和加固提升到新的水平,可以考虑Kubernetes认证安全专家认证(CKS)。
在经过一个具有挑战性的考试后,你可以获得这个证书,该考试测试了你在Kubernetes安全各方面的知识。
总结
在过去,安全可能被认为是一种必要的邪恶,是项目交付的障碍。那些日子已经一去不复返了,如今,安全问题已经早早地融入了现代软件开发实践。
安全意识在不断提高,防御策略也变得越来越复杂,但攻击和渗透方法也是如此。在这个不断发展的过程中,保持专注并始终领先于威胁一步是至关重要的。