热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

多云管理平台Rancher与安全最佳实践

 bt0sea 嘶吼专业版 0x00、前言4月中旬发表的多云管理与安全架构迁移,获得了安全圈小伙伴超出预期的阅读量,那么打算具体细化相关多云战略以及安全最佳实践。在开源圈中,目

 bt0sea 嘶吼专业版 

图片

图片

0x00、前言

4月中旬发表的"多云管理与安全架构迁移",获得了安全圈小伙伴超出预期的阅读量,那么打算具体细化相关多云战略以及安全最佳实践。

在开源圈中,目前与多云战略最贴近的开源项目是:Rancher,14.2k的star,是当之无愧No.1。谈安全需要先了解其寄生的数字平台。

2020年4月份中旬,Rancher 2.4版本发布,其新特性中包含边缘计算部署场景的支持、零宕机升级集群、安全性增强。其中安全性增强中包含了通过CIS基准扫描增强安全性,集群安全性对于成功的Kubernetes策略至关重要。然而,AimPoint的最新研究显示,44%的公司正是由于对Kubernetes容器安全的顾虑,用户可以根据互联网安全中心发布的100多个CIS安全基准,结合Kubernetes集群安全的实际定义,对RKE集群进行点对点(ac-hoc)安全扫描。用户可以创建自定义测试配置,设置扫描完成/扫描失败的通知告警,并根据这些信息采取纠正措施,以确保这些集群满足所有的安全要求。

图片

0x01、rancher基础架构

要聊架构安全问题,首先需要了解Rancher基础架构组成,架构本身帮助我们解决了哪些安全问题,在这基础上,我们还能做什么安全防御的事情。

1)Rancher基础架构解析image.png

1、资源管理

· 2.4.0 支持管理 2000 个集群和 10 万个节点

· 满足多“分支机构”,“数据中心”和“边缘集群”部署场景

· 以减少 Rancher 管理面中管理每个集群所需的内存和CPU资源

· Rancher Server 暴露更多性能相关的指标例如 websocket连接数等

2、K8S和K3S版本管理

集群版本升级是整个多云管理版本维护的刚性需求,rancher已经做到了零宕机升级整个k8s集群。减少了运维成本,提升运营效率。

@1、零宕机升级

· 先升级etcd,然后control plane节点,最后升级 Worker节点

· 升级 K8s 集群过程中,保证Etcd、kubernetes API可用、工作负载可用

· 可手工调整Etcd、control、worker升级次序,保证整个集群在升级过程当中,应用可用性。

image.png

@2、升级状态可监控image.png

@3、支持集群回滚

• 支持仅恢复etcd (已有功能) • 支持恢复etcd和k8s • 支持恢复etcd,k8s和cluster配置image.png

3、身份认证与RBAC策略

· 支持 Shibboleth 认证支持

· Shibboleth 认证支持配置 OpenLDAP 进行用户和组搜索

  · Shibboleth 负责身份验证,OpenLDAP 负责搜索用户和组。

  · Rancher 用户可以通过 LDAP 搜索用户和组,而且还可以搜索到非当前用户所在的组。

· 支持创建自定义全局角色

· 支持将组关联到 Rancher 全局角色

image.png

4、CIS benchmark扫描

· 定时执行集群安全扫描

· 设置告警,扫描完成发送通知 • 设置告警,扫描失败发送通知image.png

5、Istio

Istio,以及整个Service Mesh技术,是近一两年来Kubernetes生态系统中最亮眼的明星之一。Istio增加了容错、金丝雀部署、A/B测试、监控、跟踪和可观察性、身份认证和授权,开发人员无需再测试或编写特定代码,即可实现上述功能。如此一来,开发人员可以只专注于他们的业务逻辑,将剩下的工作交给Kubernetes和Istio。image.png

6、Pod&network配置强制

OPA Gatekeeper 支持

· Open Policy Agent Gatekeeper operator

  · OPA 使用了K8s的Admission Controllers功能

  · Gatekeeper 封装了一层 OPA,允许通过CRD的形式使用OPA

· 使用 OPA Gatekeeper 可以做什么?

  · 校验资源是不是有特定的label

  · 校验容器的镜像是否来自合规的镜像仓库

  · 强制Pod必须设置预留值和限制值

  · 强制Deployment配置nodeSelector

  · 强制Istio Policy使用双向TLS

2)架构安全

Rancher已经帮助企业解决了身份认证、k8s安全基线检查、pod和network方面的强制性策略方案的工作。但是这些就完全满足我们的要求么?image.png

中大型企业入口流量部署架构如图

Ingress 规则定义了对七层网关的要求,包括URL分发规则,基于不同域名的虚拟主机,SSL证书等。Kubernetes使用Ingress Controller 来监控Ingress规则,并通过一个七层网关来实现这些要求,一般可以使用Nginx,HAProxy,Envoy等。虽然Ingress Controller通过七层网关为后端的多个Service提供了统一的入口,但由于其部署在集群中,因此并不能直接对外提供服务。实际上Ingress需要配合NodePort和LoadBalancer才能提供对外的流量入口,采用Ingress配合NodePort和Load Balancer为集群提供外部流量入口,从该拓扑图中可以看到该架构的伸缩性非常好,在NodePort,Ingress,Pod等不同的接入层面都可以对系统进行水平扩展,以应对不同的外部流量要求。

在此基础上,我们需要集成纵深防御体系,包括恶意流量清洗(Ant-DDoS服务)、恶意流量监控(NIDS服务)、Web***防护(WAF服务)、主机安全与容器安全防御系统(HIDS/EDR服务)。image.png

1、Anti-DDOS服务,检测引擎需要发现4层DDOS和7层CC***,清洗引擎需要尽量清洗掉恶意流量,最后提供LB熔断规则联动,流量超过系统负载,需要阻断其对多云系统内部的进一步伤害。

2、WAF建议控制细粒度到服务级别,可以提升部分SLA。

3、NIDS建议部署到流量入口与LB服务结合,内部横向流量建议使用主机安全获取。

4、主机安全部分,需要部署HIDS引擎和EDR引擎,保证基础架构的物理/云主机的安全。

5、容器安全部分,需要通过主机层面获取对Pod安全防护能力。

image.png0x02、总结

基于多云时代的安全架构迁移,应该是2020年安全产品工作重点,期待更好的多云安全产品出现。image.png



推荐阅读
  • OpenStackQ版本已经发布了一段时间了。今天,小编来总结一下OpenStackQ版本核心组件的各项主要新功能,再来汇总一下最近2年来OpenStackN、O、P、Q各版本核心 ... [详细]
  • Istio是一个用来连接、管理和保护微服务的开放平台。Istio提供一种简单的方式来为已部署的服务建 ... [详细]
  • 推荐系统遇上深度学习(十七)详解推荐系统中的常用评测指标
    原创:石晓文小小挖掘机2018-06-18笔者是一个痴迷于挖掘数据中的价值的学习人,希望在平日的工作学习中,挖掘数据的价值, ... [详细]
  • 展开全部下面的代码是创建一个立方体Thisexamplescreatesanddisplaysasimplebox.#Thefirstlineloadstheinit_disp ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • flowable工作流 流程变量_信也科技工作流平台的技术实践
    1背景随着公司业务发展及内部业务流程诉求的增长,目前信息化系统不能够很好满足期望,主要体现如下:目前OA流程引擎无法满足企业特定业务流程需求,且移动端体 ... [详细]
  • 本文介绍了OpenStack的逻辑概念以及其构成简介,包括了软件开源项目、基础设施资源管理平台、三大核心组件等内容。同时还介绍了Horizon(UI模块)等相关信息。 ... [详细]
  • 本文介绍了使用Spark实现低配版高斯朴素贝叶斯模型的原因和原理。随着数据量的增大,单机上运行高斯朴素贝叶斯模型会变得很慢,因此考虑使用Spark来加速运行。然而,Spark的MLlib并没有实现高斯朴素贝叶斯模型,因此需要自己动手实现。文章还介绍了朴素贝叶斯的原理和公式,并对具有多个特征和类别的模型进行了讨论。最后,作者总结了实现低配版高斯朴素贝叶斯模型的步骤。 ... [详细]
  • Gitlab接入公司内部单点登录的安装和配置教程
    本文介绍了如何将公司内部的Gitlab系统接入单点登录服务,并提供了安装和配置的详细教程。通过使用oauth2协议,将原有的各子系统的独立登录统一迁移至单点登录。文章包括Gitlab的安装环境、版本号、编辑配置文件的步骤,并解决了在迁移过程中可能遇到的问题。 ... [详细]
  • 本文介绍了利用ARMA模型对平稳非白噪声序列进行建模的步骤及代码实现。首先对观察值序列进行样本自相关系数和样本偏自相关系数的计算,然后根据这些系数的性质选择适当的ARMA模型进行拟合,并估计模型中的位置参数。接着进行模型的有效性检验,如果不通过则重新选择模型再拟合,如果通过则进行模型优化。最后利用拟合模型预测序列的未来走势。文章还介绍了绘制时序图、平稳性检验、白噪声检验、确定ARMA阶数和预测未来走势的代码实现。 ... [详细]
  • 提供:ZStack云计算原创2016-12-26张鑫讲师介绍张鑫ZStack总架构师、联合创始人《系统虚拟化》主要作者,曾任职Intel开源软件技术中心 ... [详细]
  • Kubernetes(k8s)基础简介
    Kubernetes(k8s)基础简介目录一、Kubernetes概述(一)、Kubernetes是什么(二& ... [详细]
  • 云原生SRE
    序言年底了,没有分手的朋友的赶紧分了,所谓新年新气象,年年不重样。去留无意,望看风卷残云。。。运维不会消失,但 ... [详细]
  • k8shelm官网:https:helm.sh点击charts:https:artifacthub.iopackagessearch?sortrelevance&page11.1h ... [详细]
  • 不同优化算法的比较分析及实验验证
    本文介绍了神经网络优化中常用的优化方法,包括学习率调整和梯度估计修正,并通过实验验证了不同优化算法的效果。实验结果表明,Adam算法在综合考虑学习率调整和梯度估计修正方面表现较好。该研究对于优化神经网络的训练过程具有指导意义。 ... [详细]
author-avatar
手机用户2702934510
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有