0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

探讨云原生时代的四层架构

我快闭嘴 来源: freebuf 作者:玉符IDaaS 2020-09-18 18:05 次阅读

在传统的研发中,我们经常关注的「安全」包括代码安全、机器(运行环境)安全、网络运维安全,而随着云原生时代的到来,如果还按原有的几个维度切分的话,显然容易忽略很多云原生环境引入的新挑战,我们需要基于网络安全最佳实践——纵深防御原则,来逐步剖析「云原生的安全」,并且对不同层次的防御手段有所了解,从而建立自己的云原生安全理念,真正搭建一个内核安全的云原生系统。

注:“纵深防御”,指在计算机系统中的多个层面使用多种网络安全技术,从而减少攻击者利用关键业务资源或信息泄露到系统外部的总体可能性。在消息传递和协作环境中,纵深防御体系可以确保恶意攻击活动被阻止在基础结构内的多个检查点,降低了威胁进入内部网络的可能性。

以某IDaaS系统为例,我们把一个云原生系统安全模型分为 4 个层面,由外至内分别是:云/数据中心/网络层、集群层、容器层、代码层。

对于这里安全模型的每一层,都是单向依赖于外层的。也就是说,外层的云、集群、容器安全如果做得好,代码层的安全就可以受益,而反过来,我们是无法通过提高代码层的安全性来弥补外层中存在的安全漏洞或问题。基于上述这一点原理,我们的纵深防御策略是「自外而内」地进行“设防”。

一、云/数据中心/网络层安全

这一层也可以称之为基础设施安全,不管从何角度,公有或私有云或企业数据中心以及对应的网络安全,是 K8s 集群最根本的安全基础,如果这一层存在安全漏洞或者过于脆弱,则整个系统都不能在此基础上保证组件的安全。

我们除了需要防御传统的攻击,如 ARP 伪装、DDOS、网络层各类报文等攻击,应该针对 Kubernetes 集群采取以下保护措施:

不允许在 Internet 上公开对 Kubernetes 管理平台(Control Plane)的所有访问,同时仅开放部分可信 IP 可以访问 Kubernetes 管理 API。 所有节点只暴露指定的端口,包括对管理平台的内部端口和来自 NodePort 和 LoadBalancer 类型的 Kubernetes 服务的连接,并且不应该直接暴露到 Internet。 通过云提供商或机房的网络层安全组(例如 AWS 的 Security Group)对管理平台以及节点授予最小权限控制: 对etcd(Kubernetes 的基础存储)的访问进行严格控制(仅允许来自集群管理平台的访问),应强制所有连接都使用TLS,并确保所有信息都是在持久化层被加密的(Encryption at rest)。

二、集群层

保护 Kubernetes 集群有两个主体需要关注:

集群与组件 运行的服务或应用

保护 Kubernetes 集群组件与服务或应用:

针对这两个主体的保护,我们的保护可以分为 4 大块:管理 API 的访问控制、Kubelet 的访问控制、Runtime(运行时)工作负载或用户功能的访问控制、集群组件的安全漏洞防护。

(1) 管理 API 的访问控制

强制 TLS 保护传输层 强制 API 认证 强制 API 授权机制(RBAC

(2) Kubelet 的访问控制

生产环境启用身份验证 身份授权(RBAC) 强制 TLS 保护传输层

(3) Runtime(运行时)工作负载或用户功能的访问控制

限制使用特权容器 合理限制资源负载 防止加载非必要内核模块 限制 Pod 越权访问其他节点 基础数据凭证的访问控制

(4) 集群组件的安全漏洞防护

禁止未授权访问 etcd 启用审核日志记录 定期轮换基础架构凭证 定期升级修复漏洞

三、容器层

到了这一层,由于跟 Kubernetes 特性不是强相关,我们能提供一些通用的安全措施和建议:

四、代码层

程序代码层是最容易受攻击,但也是最可控的部分之一。虽然一般负责这块安全的人员不一定是运维开发(DevOps),可能是专门的安全工程师(Sec Eng),但有一些基本共性理念和建议是可以互相借鉴的。

总体来说,云原生时代的这四层架构:云/数据中心/网络层、集群层、容器层、代码层,与传统架构比起来更加细化和更易受攻击。自外而内地践行每一层的安全最佳实践,我们的纵深防御才能算是成功的,每个在云原生技术上想长期获益的团队需要对此有共识。
责任编辑:tzh

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 网络安全
    +关注

    关注

    10

    文章

    3173

    浏览量

    59881
  • 数据中心
    +关注

    关注

    16

    文章

    4794

    浏览量

    72194
  • 云原生
    +关注

    关注

    0

    文章

    250

    浏览量

    7955
收藏 人收藏

    评论

    相关推荐

    云原生LLMOps平台作用

    云原生LLMOps平台是一种基于云计算基础设施和开发工具,专门用于构建、部署和管理大型语言模型(LLM)全生命周期的平台。以下,是对云原生LLMOps平台作用的梳理,由AI部落小编整理。
    的头像 发表于 01-06 10:21 34次阅读

    如何选择云原生机器学习平台

    当今,云原生机器学习平台因其弹性扩展、高效部署、低成本运营等优势,逐渐成为企业构建和部署机器学习应用的首选。然而,市场上的云原生机器学习平台种类繁多,功能各异,如何选择云原生机器学习平台呢?下面,AI部落小编带您
    的头像 发表于 12-25 11:54 119次阅读

    构建云原生机器学习平台流程

    构建云原生机器学习平台是一个复杂而系统的过程,涉及数据收集、处理、特征提取、模型训练、评估、部署和监控等多个环节。
    的头像 发表于 12-14 10:34 143次阅读

    什么是云原生MLOps平台

    云原生MLOps平台,是指利用云计算的基础设施和开发工具,来构建、部署和管理机器学习模型的全生命周期的平台。以下,是对云原生MLOps平台的介绍,由AI部落小编整理。
    的头像 发表于 12-12 13:13 120次阅读

    云原生和数据库哪个好一些?

    云原生和数据库哪个好一些?云原生和数据库各有其独特的优势,适用于不同的场景。云原生强调高效资源利用、快速开发部署和高可伸缩性,适合需要高度灵活性和快速迭代的应用。而数据库则注重数据一致性、共享和独立性,确保数据的稳定和安全,适用
    的头像 发表于 11-29 10:07 161次阅读

    k8s微服务架构就是云原生吗?两者是什么关系

    k8s微服务架构就是云原生吗?K8s微服务架构并不等同于云原生,但两者之间存在密切的联系。Kubernetes在云原生
    的头像 发表于 11-25 09:39 164次阅读

    云原生和非云原生哪个好?六大区别详细对比

    云原生和非云原生各有优劣,具体选择取决于应用场景。云原生利用云计算的优势,通过微服务、容器化和自动化运维等技术,提高了应用的可扩展性、更新速度和成本效益。非云原生则可能更适合对延迟敏感
    的头像 发表于 09-13 09:53 416次阅读

    基于Arm架构的Azure虚拟机助力云原生应用开发

    子系统 (CSS) 所构建的解决方案专为运行现代通用云工作负载而设计,并且通过优化,为云原生产品提供更高的效率和性能。
    的头像 发表于 09-05 15:54 1826次阅读

    KubeCon China 2024全球大会在香港举行,京东云受邀参加探讨云原生、开源及 AI

    参会者,共同探讨云原生、开源及 AI 领域的前沿进展、核心技术和最佳实践。 京东云现场技术分享议题: 《京东云跨集群大规
    的头像 发表于 08-23 13:42 356次阅读

    中科驭数分析DPU在云原生网络与智算网络中的实际应用

    的探索与实践”专题论坛,业内DPU专家们将讨论焦点锁定在了DPU在云原生网络与智算网络中的实际应用,深入探讨了如何利用DPU技术解决计算系统级问题,进一步推动了DPU技术与产业应用的深度融合。
    的头像 发表于 08-02 11:21 723次阅读

    京东云原生安全产品重磅发布

    “安全产品那么多,我怎么知道防住了?”“大家都说自己是云原生的,我看都是换汤不换药”在与客户沟通云原生安全方案的时候,经常会遇到这样的吐槽。越来越的客户已经开始了云原生化的技术架构改造
    的头像 发表于 07-26 10:36 496次阅读
    京东<b class='flag-5'>云原生</b>安全产品重磅发布

    从积木式到装配式云原生安全

    云原生安全风险 随着云原生架构的快速发展,核心能力逐渐稳定,安全问题日趋紧急。在云原生安全领域不但有新技术带来的新风险,传统IT基础设施下的安全威胁也依然存在。要想做好
    的头像 发表于 07-26 10:35 313次阅读
    从积木式到装配式<b class='flag-5'>云原生</b>安全

    基于DPU与SmartNic的云原生SDN解决方案

    个轻量级,可移植的运行环境,逐渐成为云原生时代基础设施的事实标准。Kubernetes通过网络插件(CNI,Container Network Interface)实现灵活地配置和管理集群中的容器网络,确保容器之间的有效通信和网络安全。
    的头像 发表于 07-22 11:44 716次阅读
    基于DPU与SmartNic的<b class='flag-5'>云原生</b>SDN解决方案

    云原生是大模型“降本增效”的解药吗?

    云原生AI正当时
    的头像 发表于 02-20 09:31 404次阅读

    米哈游大数据云原生实践

    近年来,容器、微服务、Kubernetes 等各项云原生技术的日渐成熟,越来越多的公司开始选择拥抱云原生,并开始将 AI、大数据等类型的企业应用部署运行在云原生之上。以 Spark 为例,在云上运行
    的头像 发表于 01-09 10:41 595次阅读
    米哈游大数据<b class='flag-5'>云原生</b>实践