共计 3776 个字符,预计需要花费 10 分钟才能阅读完成。
本篇内容主要讲解“怎么在 Rancher 2.4 中实现 CIS 集群”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让丸趣 TV 小编来带大家学习“怎么在 Rancher 2.4 中实现 CIS 集群”吧!
为什么 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-rc3
Unable to find image rancher/rancher:v2.4.0-rc3 locally
Trying to pull repository docker.io/rancher/rancher ...
v2.4.0-rc3: Pulling from docker.io/rancher/rancher
423ae2b273f4: Pull complete
de83a2304fa1: Pull complete
f9a83bce3af0: Pull complete
b6b53be908de: Pull complete
b365c90117f7: Pull complete
c939267bea55: Pull complete
7669306d1ae0: Pull complete
25e0f5e123a3: Pull complete
d6664495480f: Pull complete
99f55ceed479: Pull complete
edd7d0bc05aa: Pull complete
77e4b172baa4: Pull complete
48f474afa2cd: Pull complete
2270fe22f735: Pull complete
44c4786f7637: Pull complete
45e3db8be413: Pull complete
6be735114771: Pull complete
dfa5473bfef3: Pull complete
Digest: sha256:496bd1d204744099d70f191e86d6a35a5827f86501322b55f11c686206010b51
Status: Downloaded newer image for docker.io/rancher/rancher:v2.4.0-rc3
a145d93e8fa66a6a08b4f0e936dafc4b9717a93c59013e78118a4c5af8209a53
[root@rancher-rke ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
a145d93e8fa6 rancher/rancher:v2.4.0-rc3 entrypoint.sh About a minute ago Up About a minute 0.0.0.0:80- 80/tcp, 0.0.0.0:443- 443/tcp distracted_albattani
Step2:访问 Rancher URL 并安装 RKEhttp://{hostIP}
设置密码和 URL
设置 Rancher 密码和 URL 作为 host IP
添加一个新集群并选择 From existing nodes (Custom)(从现有节点添加)
选择默认选项并选择 etcd、控制平面和 worker,因为我们将在一个 VM 上安装这一切。
复制以上命令并运行在 VM 实例上
[root@rancher-rke ~]# **sudo docker run -d --privileged --restart=unless-stopped --net=host -v /etc/kubernetes:/etc/kubernetes -v /var/run:/var/run rancher/rancher-agent:v2.4.0-rc3 --server https://185.136.233.195 --token** hwpf4kpjf49gk9wq5xvw7gdjxtj257j8wmnn5rj6lb98csz2zmkcgq --ca-checksum 3f9640ab12533287fd5e0ad1663cccf354a4ce2a76243cd6735abcfb085bdbf2 --etcd --controlplane --worker
Unable to find image rancher/rancher-agent:v2.4.0-rc3 locally
Trying to pull repository docker.io/rancher/rancher-agent ...
v2.4.0-rc3: Pulling from docker.io/rancher/rancher-agent
423ae2b273f4: Already exists
de83a2304fa1: Already exists
f9a83bce3af0: Already exists
b6b53be908de: Already exists
931af2228ddf: Pull complete
94b51e50d654: Pull complete
7e7961efe32b: Pull complete
85725dc92c8d: Pull complete
5a82c6e509a6: Pull complete
3b675e73aee3: Pull complete
Digest: sha256:89017bd846a8cc597186f41eb17cfe1520aa0f7e6d86b48d8c32a5490c588f1e
Status: Downloaded newer image for docker.io/rancher/rancher-agent:v2.4.0-rc3
5aaa9fab48db4557c84b7ce0c61816384075570ed3e593446795bf8443610b64
在 Rancher UI 中导入集群,我们可以看到集群的状态为 active:
现在点击集群,并从【工具】菜单栏中,选择 CIS 安全扫描。
当前 CIS 安全扫描仅针对 RKE 集群,有两个扫描配置文件:宽松(Permissive)和严格(Hardened)。
Permissive(宽松):该配置文件具有一组将被跳过的测试,因为它们对于刚开始使用 Kubernetes 的用户来说没有必要。
Hardened(严格):此配置文件不会跳过任何测试。该配置针对高阶用户以及安全专家。
对于每种配置类型,其中一些测试会被标记为不适用,因为它们不适用于 RKE 集群。
现在我们选择“宽松”配置文件并运行扫描。结果是所有标准 RKE 集群都通过。
为了看到更多关于测试执行的细节,点击该测试,然后就能显示整个测试列表,包含失败 / 跳过 / 通过的信息。
现在,我们使用“严格”配置文件来执行相同的测试,我们将会看到上次跳过的测试失败。
如你所见,根据 CIS 基准测试,失败的结果提供了描述以及补救步骤。这十分有效,因为你不仅可以根据 CIS 基准了解集群中哪些东西会崩溃,而且还可以根据建议来修复集群。
加强集群安全性的后续步骤
尽管一键单击就能运行 CIS 安全扫描,但是能够自动化执行则更好。也可以在 Rancher 中进行配置。定期进行安全扫描可以让你高枕无忧,也是团队的一针定心剂。如果集群中的确出现了某些不合规的情况,你也能够更快找到它。
到此,相信大家对“怎么在 Rancher 2.4 中实现 CIS 集群”有了更深的了解,不妨来实际操作一番吧!这里是丸趣 TV 网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!