“驯服云野兽”:自节点而上,Kubernetes安全总攻略

派小拓 派拓网络

延展。而在云计算蓬勃发展的同时,安全和隐私所面临的挑战随之而来:尽管我们已经拥有一些针对集群保护及运维的云服务器,但资源集中也会使云平台更容易成为******的目标,云上安全问题也更加突出。因此云安全的重要性在云计算市场越发凸显。

以Kubernetes为例,它是一个庞大的平台,可以集成许多其他工具,这为解决安全问题提供了机遇:集成使得建立一套自动化、系统化的流程更加容易,从而令安全策略紧密集成,可以缓解堆栈各层和各级别的威胁。

然而,Kubernetes对于保护集群也面临着诸多挑战。众所周知,Kubernetes本身仅提供少数原生安全功能,这使得保护Kubernetes环境的每一层变得极为困难。但这不意味着,企业需要将Kubernetes安全视为毫无希望的挑战。相反,只要基于Kubernetes的流程,全面了解自节点向上的各种安全挑战,并且逐步掌握相应具体的自动化、可扩展的解决方案,那么无论企业的集群有多大,托管在何种类型的基础设施上(本地、公有云或托管服务),这些方法都可以保护基于Kubernetes的工作负载的安全。

首先,一定要理解Kubernetes是一个由6个以上不同的组件所组成构成的复杂平台,拥有一个API服务器,负责支持集群不同部分之间的通信,还有一个管理工作负载分布方式的调度器和一个管理Kubernetes本身状态的控制器。其集群中还包含一个在每个节点或服务器上运行的代理;以及一个容纳集群配置数据的键值存储。

▲ 托管 Kubernetes 服务架构

当然,这些只是Kubernetes本身的主要组件。功能性集群还依赖许多其他活动部件。Kubernetes集群的各个不同的部分都有自身的潜在漏洞。保护Kubernetes需要保护很多不同的组件,每个组件有着各自的安全需求。尽管Kubernetes提供了某些内置的安全功能,但是没有外部工具的帮助,它很难保护自身安全,这一事实使Kubernetes的安全问题进一步复杂化。因此,企业需要多方面的防护。

Kubernetes允许管理员定义基于角色的访问控制(RBAC)策略,以防止未经授权访问集群资源。

此类Kubernetes内置安全功能虽然填补了Kubernetes集群的某些安全漏洞。但是,在解决许多其他类型的安全风险方面,它们几乎没有任何作用,例如影响节点操作系统或容器运行时的***。为了建立Kubernetes整体更为完善的安全策略,更好地保护Kubernetes基础设施,企业需要考虑比这少数的内置Kubernetes安全功能更多的事项。


在基于Kubernetes的环境中首先需要保护的层是构建层,由于Kubernetes集群的安全性仅仅取决于其上运行的代码,因此在代码部署到集群之前采取步骤确保其安全是保证Kubernetes各方面安全的先决条件。那么将安全集成到自动构建管道的三个主要交汇点,即:集成开发环境 (IDE)、配置管理和持续集成,便是对于Kubernetes基础设施保护的重心。

▲ 构建管道中的安全

01

IDE

IDE是开发人员通常用于为应用编写源代码的工具。作为启动应用部署管道的工具,IDE应该作为漏洞扫描的起点。

02

持续集成

持续集成(CI)工具可以托管源代码,并将其转换为可以在Kubernetes中部署的二进制代码。

03

配置管理

大多数Kubernetes应用的构建和部署管道依赖于自动化的、基于策略的配置管理,这些配置管理通常以基础架构即代码(IaC)和YAML文件的形式存在。

除了简化Kubernetes环境的配置流程外,配置管理工具还提供了在应用配置文件之前扫描安全问题的机会。Prisma™ Cloud等工具可以通过将企业的IaC和YAML文件与已知的安全文件进行比较,来自动执行此操作。Prisma Cloud可以直接与企业的源代码管理系统(例如 GitHub®或GitLab®)集成,从而轻松构建完全自动化的流程,来保护与现有构建管道配合使用的Kubernetes配置文件。

大多数情况下,应用作为容器镜像部署在Kubernetes上。我们需要了解容器代码本身以及镜像所基于的上游依赖项中是否存在漏洞,进而对容器镜像进行全面地保护。

当使用自动化工作流程构建容器镜像时,团队可能需要集成漏洞和合规性扫描。


开发人员桌面

扫描容器镜像中是否存在安全问题有两种方式。第一种 是手动扫描各个镜像,可以使用twistcli等工具。如果企业需要对某个镜像执行一次性的安全检查,可以使用这种方式。


持续集成

在Jenkins®、CircleCI®或Azure®DevOps等平台上使用自动化工作流程构建容器镜像时,开发人员和DevOps团队可能需要将漏洞和合规性扫描集成到这些工作流程中。Prisma Cloud等安全平台可以扫描这些容器镜像,根据Docker CIS基准等框架来确定问题,并根据企业和应用程序的要求实施标准。


容器注册表

扫描容器注册表的一大挑战是可能存在多种不同的容器 注册表。由于注册表选项和配置的多样性,因此,选择一个能与任何类型注册表集成的容器镜像扫描工具就十分重要。Prisma Cloud就可以提供这种灵活性,无论Kubernetes集群的配置方式如何,管理员都可以使用一站式镜像扫描解决方案。

将应用部署到集群中后,保护应用的安全就成了Kubernetes安全最为复杂的方面。除了之前提供的指导在部署前确保应用安全之外,企业还可以采取多种步骤,在应用部署后减少应用的安全风险。

可视性

***行为可能以各种各样的方式发生,保持Kubernetes服务和资源持续可见是最重要的。

借助Prisma Cloud,安全团队可以使用公有云服务提供商(CSP)的API数据以及配置和合规性状态来持续了解集群的位置。

运行时防护

Kubernetes集群会随着节点的脱机或关闭而不断变化,应用的规模也会根据需求的转变而扩大或缩小,诸如此类。因此,无法为“正常”活动建立一个基准并根据这个基准来衡量异常活动。

所以要使用Prisma Cloud这样的Kubernetes运行时防护解决方案,它可以自动了解Kubernetes中部署的应用在不同条件下有着怎样的行为。借助这种洞察力,用户可以有效地区分应用行为的正常变化和反映安全问题的应用行为变化。

网络保护

基于网络的安全威胁可能以两种不同的方式影响着Kubernetes:一种是通过将应用连接到互联网的面 向公众的网络;另一种是通过Kubernetes容器用于彼此交换数据的内部网络。

加之Kubernetes各类环境下的网络活动会不断波动,因此除了能够了解Kubernetes集群中网络流量的细微差别的容器感知型网络扫描程序之外,还需要使用防火墙工具来定义规则,以防御基于网络的威胁。Prisma Cloud的容器感知型网络扫描和第4层防火墙功能可以完成所有这些工作。

节点 OS 监控

监控Kubernetes内部组件的同时,还要监控支撑每个节点的操作系统,这一点至关重要。Prisma Cloud可以监控任何类型的操作系统或云基础架构以及Kubernetes,因此提供了整体监控功能。

Kubernetes 安全审核和合规性

实施定期的审核流程来扫描Kubernetes集群的所有层及其配置,确保其符合行业标准和最佳实践。Prisma Cloud支持自上而下的Kubernetes安全审核,可以检测集群的所有组件是否背离了既定的基准和最佳实践,企业可以将这些检查映射到针对常见框架(例如,PCI DSS、HIPAA、GDPR和NIST SP 800-190)预构建的合规模板中。在Open Policy Agent或Kubernetes AuditSink等云原生技术的支持下,用户也可以编写自己的合规性检查。如需满足特定行业的合规性规则或要部署具有通用审核策略无法解决的安全需求的自定义业务应用,这种方法同样适用。


Kubernetes复杂的安全性问题可能令人望而生畏,但Prisma Cloud提供了一整套安全功能,可供团队解决Kubernetes安全问题的各个方面。它还与Kubernetes 和各种相关工具原生集成,可以轻松将安全性纳入团队既有的Kubernetes构建、部署和管理流程中。

数字时代,万物互联,云计算市场蓬勃发展,云基础设施投资呈飞速增长态势,云安全已然处于时代高位,这对万千企业来讲,既是机遇,更是挑战。

©著作权归作者所有:来自51CTO博客作者mob604756f2882b的原创作品,如需转载,请注明出处,否则将追究法律责任

更多相关文章

  1. 04. SpringCloud实战项目-安装Docker
  2. 容器 - Web服务示例(6)
  3. ORA-15038: disk '/dev/mapper/mpath' mismatch on 'Time Stamp'
  4. 云管平台监控实践分享 | 周末送资料
  5. vue之elementui,树形组件el-tree实现左右拖动滚动条
  6. 实例演示flex容器中的四个属性的功能,参数,以及作用
  7. 容器无法启动,修改Nginx配置文件的方法
  8. Openshift3.7完整安装手册+容器化Harbor
  9. 容器计算资源管理&网络QoS的实现---Openshift3.9学习系列第四篇

随机推荐

  1. Android 自定义进度条
  2. Android进度条总结
  3. android源码在线查看
  4. Android使用代码模拟HOME键的功能
  5. 35、键盘布局的tableLayout备份
  6. Android(安卓)Gallery子元素无法横向填满
  7. Android植物大战僵尸小游戏
  8. android返回HOME界面
  9. android textview部分字体变颜色
  10. android自带图片资源