CKS认证 | Day1 K8s集群部署与安全配置

一、K8s安全运维概述

Kubernetes(K8s) 是一个广泛使用的容器编排平台,用于自动化部署、扩展和管理容器化应用程序。随着 K8s 在生产环境中的普及,安全运维成为确保系统稳定性和数据安全的关键。

 

1.1 安全运维的重要性

  • 万物互联,安全为基,企业的网络安全不可小视;
  • 服务器被黑事件频发;
  • 公司重要数据资产在运维手中;

— SecDevOps

SecDevOps 与 DevOps相似,是一种哲学,鼓励运维人员、开发 人员、测试人员和安全人员进行更高水水平协作,将信息安全被放 在事前考虑,将安全性注入自动化流程中,以确保整个产品周期内 的信息安全。

1.2 K8s提供的安全机制

为保证集群以及容器应用的安全,Kubernetes 提供了多 种安全机制,限制容器的行为,减少容器和集群的攻击面, 保证整个系统的安全性。

  • 集群安全:TLS证书认证、RBAC;

  • Security Context:限制容器的行为,例如只读文 件系统、特权、运行用户等;

  • Pod Security Policy:集群级的 Pod 安全策略, 自动为集群内的 Pod 配置安全策略;

  • Sysctls:允许容器设置内核参数;

  • AppArmor:限制容器中应用对资源的访问权限;

  • Network Policies:控制集群中网络通信;

  • Seccomp:限制容器内进程的系统调用;

1.3 K8s安全运维实践思路

二、部署一套完整的K8s高可用集群

请移步:CKS认证 | 使用kubeadm部署K8s高可用集群(v1.26)-CSDN博客

 

三、CIS 安全基准介绍

3.1 CIS 介绍

CIS(Center for Internet Security)安全基准 是由 CIS 组织制定的一套安全标准,旨在帮助组织评估和改进其系统和应用程序的安全性。CIS 基准提供了一套详细的配置指南和最佳实践,通过遵循 CIS 基准,组织可以显著提高系统和应用程序的安全性,降低潜在的安全风险。使用 CIS-CAT 等自动化工具,可以简化评估和修复过程,确保系统和应用程序符合 CIS 基准的要求。主要用于保护常见的操作系统和软件平台免受已知的安全威胁。

互联网安全中心(CIS,Center for Internet Security),是一个非盈利组织,致力为互联网提供 免费的安全防御解决方案。


CIS 安全基准的核心概念:

1)目标

  • 提高安全性:通过标准化配置和最佳实践,减少系统和应用程序的漏洞
  • 降低风险:帮助组织识别和修复潜在的安全问题
  • 合规性:满足行业标准和法规要求(如 PCI-DSS、HIPAA)

2)适用范围

  • 操作系统:如 Windows、Linux(如 Ubuntu、Red Hat)、macOS
  • 网络设备:如防火墙、路由器、交换机
  • 云平台:如 AWS、Azure、GCP
  • 容器编排平台:如 Kubernetes(K8s)

CIS 安全基准的主要组成部分:

(1) 控制项(CIS Controls)

  • 定义:一系列高优先级的安全实践,用于保护组织的核心资产

  • 特点:分为多个级别(Level 1、Level 2、Level 3),每个级别对应不同的安全需求

    1. Level 1:基本的安全实践,适用于所有组织

    2. Level 2:适用于中型和大型组织,提供更严格的安全控制

    3. Level 3:适用于高安全需求的场景,如政府和金融机构

(2) 配置基准(CIS Benchmarks)

  • 定义:针对特定操作系统、应用程序或平台的详细配置指南

  • 内容:包括安全配置的最佳实践、建议和检查项

  • 示例

    1. Linux 系统:禁用不必要的服务、配置防火墙规则

    2. Kubernetes:启用 RBAC、配置网络策略

    3. AWS:启用多因素认证(MFA)、配置 IAM 策略

(3) 自动化工具(CIS-CAT)

  • 定义:CIS 提供的自动化工具,用于评估系统和应用程序是否符合 CIS 基准

  • 功能

    1. 扫描系统和应用程序,检查是否符合 CIS 基准

    2. 生成详细的报告,列出不符合的配置项

    3. 提供修复建议

3.2 K8s基准测试工具kube-bench

kube-bench 是由 Aqua Security 开发的一款开源工具,专门用于评估 Kubernetes 集群是否符合 CIS(Center for Internet Security)Kubernetes 基准。CIS 基准提供了一套针对 Kubernetes 的安全配置最佳实践,而 kube-bench 通过自动化扫描集群,帮助用户发现并修复不符合 CIS 基准的配置问题。以CIS K8s基准作为基础,用该工具来检查K8s是否安全部署。 主要查找不安全的配置参数、敏感的文件权限、不安全的帐户或公开端口等等

Github项目地址:https://github.com/aquasecurity/kube-bench

3.2.1 kube-beach部署

1)下载二进制包

2)解压tar包即可使用

tar zxvf kube-bench_0.6.14_linux_amd64.tar.gz
# 创建默认配置文件路径
mkdir /etc/kube-bench
mv cfg/ /etc/kube-bench/

[root@k8s-master-1-71 ~]# ls /etc/kube-bench/cfg/
ack-1.0   cis-1.23  cis-1.6      eks-1.0.1                 gke-1.0    rh-1.0
aks-1.0   cis-1.24  cis-1.6-k3s  eks-1.1.0                 gke-1.2.0
cis-1.20  cis-1.5   config.yaml  eks-stig-kubernetes-v1r6  rh-0.7
[root@k8s-master-1-71 ~]# ls /etc/kube-bench/cfg/cis-1.24/
config.yaml        etcd.yaml    node.yaml
controlplane.yaml  master.yaml  policies.yaml

# 将解压的kube-bench执行程序,移动到二进制目录下
mv kube-bench /usr/bin/

 

3.2.2 kube-beach使用

Kube-bench 与 k8s 版本支持参考:https://github.com/aquasecurity/kube-bench/blob/main/docs/platforms.md#cis-kubernetes-benchmark-support

Source

Kubernetes Benchmark

kube-bench config

Kubernetes versions

CIS

1.5.1

cis-1.5

1.15

CIS

1.6.0

cis-1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小安运维日记

Hey~ 感谢您的充电支持!!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值