Kubernetes安全是许多组织面临的问题。TechRepublic在2020年发表的一篇报告显示,94%的受访者表示,其组织在过去12个月遇到过涉及Kubernetes和容器环境的安全事件。近一半(44%)的组织通过延迟将应用程序部署到生产环境来应对这些事件。
这些发现表明,对于力求将容器和Kubernetes应用程序部署到生产环境的组织来说,安全是优先事项,而且需要继续是这样。为了尽可能顺畅地部署,组织要了解整个应用程序开发生命周期的安全和合规要求。这意味着将安全集成到容器生命周期的三个阶段:构建、部署和运行时。
第一个阶段:构建
应用程序开发生命周期的构建阶段中存在的漏洞在运行时可能变得更难修复,且成本更高。这就是为什么组织在构建阶段关注容器安全很重要。它们可以通过遵循这几个安全最佳实践来做到这一点:
第二个阶段:部署
组织需要在部署Kubernetes基础架构之前做好保护。这项工作应先确保组织对其网络有足够的可见性。Help Net Security(https://www.helpnetsecurity.com/2019/06/17/runtime-container-security/)阐明了可见性对于确保容器安全的重要性:
通过深入的可见性和保护来保护网络至关重要,因为网络是防止恶意攻击者接触工作负载的第一道防线。同时,网络是保护数据以免泄露的最后一道防线。在这第一道防线和最后一道防线之间,网络可见性和适当的网络控制可以防止内部东西向流量内的攻击不断升级。
在可见性方面,除了具体了解能访问哪些资源外,组织还要具体了解每种资源部署在哪里、如何部署。然后,它们可以利用网络策略来调整在Pod和集群之间传输的流量。正如Kubernetes在官网上指出,默认情况下pod不是隔离的,因此可以接受来自任何来源的流量。幸好,组织可以通过创建网络策略来限制这些通信流。
组织也不应忘记在部署阶段扫描映像。一旦获得了这些扫描的结果,就要对其采取行动。比如说,如果容器映像缺少扫描结果或存在已知漏洞,组织可以使用那些扫描的结果以及准入控制器来拒绝部署应用程序。
第三个阶段:运行时
最后但并非最不重要的一点是,组织需要在运行时阶段致力于容器安全。在此阶段,可见性和映像扫描仍然很重要。但是组织需要记住一些重要的差异。StackRox介绍了映像扫描在构建阶段和运行时阶段之间有何区别(https://www.stackrox.com/post/2020/04/container-image-security-beyond-vulnerability-scanning/):
在生产系统上运行时,可以利用生成和编译应用程序所使用的构建工具。请记住,应将容器视为暂时的临时实体。切勿计划“打补丁”或更改运行中的容器。构建新映像,并替换过时的容器部署。使用多阶段Dockerfile,使软件编译远离运行时映像。
同样,组织可以确保其运行时容器安全的唯一方法是确保网络上的异常行为无处隐藏。 Help Net Security解释,因此,组织需要能够在第7层检查网络数据包。这么一来,组织还将能够利用深度数据包检查(DPI)及其他类型的技术,有助于发现更狡猾的攻击。
文章题目:确保Kubernetes安全的三个阶段:构建、部署和运行时!
分享路径:http://www.mswzjz.cn/qtweb/news5/341405.html
攀枝花网站建设、攀枝花网站运维推广公司-贝锐智能,是专注品牌与效果的网络营销公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 贝锐智能