前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >简介:CIS Kubernetes 安全基准指南

简介:CIS Kubernetes 安全基准指南

作者头像
崔秀龙
发布2020-02-26 11:11:49
2.2K10
发布2020-02-26 11:11:49
举报
文章被收录于专栏:伪架构师伪架构师

在使用 Kube Bench 的过程中注意到,其指导依据来自于 CIS Benchmark,于是顺藤摸瓜,下载了 CIS Kubernetes Be nchmark 的 PDF 版本,全文有两百多页,阅读量还蛮大的,因此对其进行整理,便于大家参考使用。

简介

CIS 的指导原则里把建议行为分成了两级:

  • 一级:使用该建议不会造成负面影响。
  • 二级:仅建议在非常强调安全性的系统中使用,可能对系统有副作用。

另外还将具体的检测结果分为计分和不计分两种结果。

以上两个维度可以用来对系统进行现状评估,也有助于读者选择性地采纳加固措施。

整个指南分为五个部分:

  1. 控制平面组件
  2. etcd
  3. 控制平面配置
  4. 节点配置
  5. 策略

检查项概要

  1. 所有运行参数文件、kubeconfig 文件以及证书,权限至少应为 644 并且属于 root:root
  2. API Server
    • 南向和北向通信
      • 关闭匿名访问
      • 禁止明文通信
    • 认证
      • 启用 Node,RBAC 认证
      • 禁用 Token 和 Basic 认证
      • 禁用 Alwaysallow
    • Admission Control
      • 禁用:AlwaysAdmit
      • 启用:AlwaysPullImages、AlwaysAdmit、EventRateLimit、ServiceAccount、NamespaceLifecycle、PodSecurityPolicy、NodeRestriction
    • 关闭 profiling
    • 启用审计日志
    • 启用请求超时
    • 启用 --service-account-lookup
    • --tls-cipher-suites 仅使用新的、强加密算法
    • 使用 oidc 等模式来代替客户端证书认证。
  3. Controller Manager
    • 关闭 profiling
    • 开启 --use-service-account-credentials
    • 绑定 127.0.0.1
    • 启用 --service-account-private-key-file
    • --feature-gates 启用 RotateKubeletServerCertificate
  4. Scheduler
    • 关闭 profiling
    • 绑定 127.0.0.1
  5. ETCD
    • 启用节点间和客户端的双向认证
    • 设置数据文件权限
    • 禁用 --auto-tls
    • 使用独立的 CA 证书
  6. 工作节点
    • Kubelet、Kube-proxy 的服务和配置文件权限
    • 关闭匿名访问
    • --authorization-mode 禁用 AlwaysAllow
    • kubelet 参数 --read-only-port 为 0
    • --streaming-connection-idle-timeout 不应设置为 0
    • --protect-kernel-defaults 设置为 true
    • --make-iptables-util-chains 设置为 true
    • 不要设置 --hostname-override
    • HTTPS 访问
    • --rotate-certificates 设置为 true
    • --event-qps 设置足够高,或者为 0
    • --feature-gates 启用 RotateKubeletServerCertificate
  7. RBAC 和 ServiceAccount
    • 仅在需要时才使用 cluster-admin 角色
    • 限制对 secret 的访问
    • 限制使用通配符
    • 限制分配 Pod 创建权限
    • 仅在需要时才加载 Token,缺省将 automountServic eAccountToken 为 false
    • 使用不同的 ServiceAccount
  8. Pod Security Policy
    • 使用 PSP 不应泛泛使用 privileged
    • 使用 PSP 谨慎控制如下授权
      • hostPID
      • hostIPC
      • hostNetwork
      • allowPrivilegeEscalation
      • runAsUser.rule
      • NET_RAW
    • 不应提供全面放行的 PSP 策略
  9. 网络策略和 CNI
    • 支持策略的 CNI
    • 所有命名空间都定义网络策略
  10. Secret 管理
    • 建议使用文件而非环境变量
    • 使用外部 Secret 存储
  11. 扩展准入控制
    • 保障镜像来源
  12. 通用策略
    • 命名空间隔离
    • 在 Docker 中启用 seccomp
    • 为 Pod 和容器启用 Security context
    • 不用缺省命名空间

附件

暗号:cis,获取原文下载链接,其中包含所有检查项目的详细解释,以及检查工作表。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-02-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 伪架构师 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 简介
  • 检查项概要
  • 附件
相关产品与服务
容器镜像服务
容器镜像服务(Tencent Container Registry,TCR)为您提供安全独享、高性能的容器镜像托管分发服务。您可同时在全球多个地域创建独享实例,以实现容器镜像的就近拉取,降低拉取时间,节约带宽成本。TCR 提供细颗粒度的权限管理及访问控制,保障您的数据安全。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档