对于任何成功的Kubernetes策略来说 , 集群安全是至关重要的部分 。近期 , 一份由AimPoint发布的调查报告显示 , 44%的受访者表示由于Kubernetes容器的安全问题 , 推迟了应用程序进入生产环境 。
然而 , Kubernetes安全是一台复杂的机器 , 其中包含许多活动部件、集成件以及旋钮和杠杆 。这会使本来就充满挑战的安全工作变得更加困难 。
文章插图
业界应用最为广泛的Kubernetes管理平台创建者Rancher Labs一直在为用户寻找各种高效的方式 , 因此我们十分高兴在Rancher 2.4中推出了CIS安全扫描功能 。这项Rancher托管集群的新功能可以让你针对互联网安全中心发布的100多个CIS基准运行RKE集群的ad-hoc安全扫描以及定期的扫描 。使用CIS安全扫描 , 你可以创建自定义测试配置并生成包含通过/失败信息的报告 。根据报告内容 , 你可以采取各种措施以确保你的集群满足所有安全要求 。
CIS基准已经被广泛接受为保障Kubernetes集群安全的事实标准 。它提供了行业认可的指标 , 该指标可以用来衡量Kubernetes集群的安全状况 。它将信息安全社区领域的知识与Kubernetes中的API、交互和总体控制路径的深刻理解相结合 。当工程师试图了解他们保护集群所需的所有位置时 , 他们可以从基准中了解到数十种攻击的可能性以及如何缓解它们 。
为什么IT Ops需要CIS安全扫描?
根据CIS基准手动评估集群是一个十分耗时且容易失败的过程 。而现实中 , 我们的系统不断变化 , 因此我们需要经常进行重新评估 。这就是kube-bench大展身手之处 。这是Aqua创建的一种开源工具 , 用于根据CIS Benchmark自动评估集群 。
Rancher 2.4使用kube-bench作为安全引擎 , 并且对其进行了一些补充 。借助Rancher 2.4中的CIS安全扫描 , 你可以一键编排集群扫描 。Rancher负责获取kube-bench工具并将其连接到集群 。然后 , Rancher将从所有节点的结果中总结出一个易于阅读的报告 , 该报告会展示集群通过或失败的区域 。此外 , Rancher还能让你在集群级别安排周期扫描 。该设置可以在集群模板级别启用 , 并在默认情况下 , 允许管理员为计划的扫描配置模板 , 以便针对Rancher设置中任何用户创建的每个新集群运行扫描 。最后 , Rancher为CIS安全扫描提供自定义告警和通知 , 以通知安全管理员配置漂移或集群扫描失败 。
在Rancher 2.4中动手实践CIS集群
让我们启动一个Rancher RKE集群 。
前期准备:centos VM(至少2核) , 并安装好Docker
Step1:运行Rancher Server
[root@rancher-rke ~]# sudo docker run -d --restart=unless-stopped -p 80:80 -p 443:443 rancher/rancher:v2.4.0-rc3Unable to find image 'rancher/rancher:v2.4.0-rc3' locallyTrying to pull repository docker.io/rancher/rancher ...v2.4.0-rc3: Pulling from docker.io/rancher/rancher423ae2b273f4: Pull completede83a2304fa1: Pull completef9a83bce3af0: Pull completeb6b53be908de: Pull completeb365c90117f7: Pull completec939267bea55: Pull complete7669306d1ae0: Pull complete25e0f5e123a3: Pull completed6664495480f: Pull complete99f55ceed479: Pull completeedd7d0bc05aa: Pull complete77e4b172baa4: Pull complete48f474afa2cd: Pull complete2270fe22f735: Pull complete44c4786f7637: Pull complete45e3db8be413: Pull complete6be735114771: Pull completedfa5473bfef3: Pull completeDigest: sha256:496bd1d204744099d70f191e86d6a35a5827f86501322b55f11c686206010b51Status: Downloaded newer image for docker.io/rancher/rancher:v2.4.0-rc3a145d93e8fa66a6a08b4f0e936dafc4b9717a93c59013e78118a4c5af8209a53
[root@rancher-rke ~]# docker psCONTAINER IDIMAGECOMMANDCREATEDSTATUSPORTSNAMESa145d93e8fa6rancher/rancher:v2.4.0-rc3"entrypoint.sh"About a minute agoUp About a minute0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcpdistracted_albattani
Step2:访问Rancher URL并安装RKEhttp://{hostIP}设置密码和URL
文章插图
设置Rancher密码和URL作为host IP
添加一个新集群并选择From existing nodes (Custom)(从现有节点添加)
文章插图
选择默认选项并选择etcd、控制平面和worker , 因为我们将在一个VM上安装这一切 。
推荐阅读
- 看我怎么通过Python脚本给100台网络设备一键化下发相同的配置
- Ubuntu上运行Docker提示权限拒绝,如何处理?
- 多设备科学上网,一键搞定——软路由系统对比
- WordPress安装教程
- 小程序获客宝典
- 如何以非root用户运行Docker容器
- 教你如何一键生成Nginx配置,让配置不在繁琐
- 使用 Python 在 GitHub 上运行你的博客
- 如何防止服务器被入侵?
- 电脑关机慢是什么原因