ITADN
kubearmor/KubeArmor
README.md
以下内容由 AI 翻译,如有问题请点此提交 issue 反馈

Build Status CII Best Practices CLOMonitor OpenSSF Scorecard FOSSA Status FOSSA Status Slack Discussions Docker Downloads ArtifactHub

KubeArmor 是一个云原生运行时安全强制执行系统,它在系统层面限制 pod、容器和节点(VM)的行为(例如进程执行、文件访问和网络操作)。

KubeArmor 利用 Linux 安全模块(LSM),如 AppArmorSELinuxBPF-LSM 来强制执行用户指定的策略。KubeArmor 通过利用 eBPF 生成带有容器/pod/命名空间身份信息的丰富告警/遥测事件。

:muscle: 加固基础设施
:chains: 保护关键路径,如证书包
:clipboard: 基于 MITRE、STIGs、CIS 的规则
:left_luggage: 限制对原始数据库表的访问
:ring: 最小权限访问
:traffic_light: 进程白名单
:traffic_light: 网络白名单
:control_knobs: 控制对敏感资产的访问
:telescope: 应用行为
:dna: 进程执行、文件系统访问
:compass: 服务绑定、入站、出站连接
:microscope: 敏感系统调用分析
:snowflake: 部署模型
:wheel_of_dharma: Kubernetes 部署
:whale2: 容器化部署
:computer: VM/裸机部署

架构概览

KubeArmor High Level Design

文档 :notebook:

贡献者 :busts_in_silhouette:

双周会议

社区与治理

KubeArmor 是一个由社区治理的项目。以下文档描述了项目的运作方式:

  • :scroll: 治理 — 角色、决策机制、供应商中立性、子团队、投票。
  • :busts_in_silhouette: 维护者 — 当前的维护者、审查者和荣誉维护者,及其所属机构。
  • :handshake: 行为准则 — 我们遵循 CNCF 行为准则
  • :package: 发布流程 — 发布频率、发布候选版本、发布经理、支持窗口。
  • :lock: 安全策略 — 如何报告漏洞。

通知/致谢 :handshake:

  • KubeArmor 使用了 Tracee 的系统调用实用函数。

CNCF

KubeArmor 是云原生计算基金会(Cloud Native Computing Foundation)的 Sandbox ProjectCNCF SandBox Project

路线图

KubeArmor 的路线图通过 KubeArmor Projects 进行跟踪。

相关仓库

KubeArmor 不仅仅是一个单独的仓库。以下位于 kubearmor GitHub 组织下的仓库是更广泛项目的一部分。每个仓库均受 GOVERNANCE.md 治理——请参阅其中的 Subprojects 部分,了解核心子项目和社区子项目的分类方式。

注意: 此列表涵盖积极维护的仓库。如需完整列表(包括已归档的),请参阅 organization page

核心

仓库说明
KubeArmor主要的运行时安全执行守护进程。即本仓库。
kubearmor-clientkarmor,用于安装、配置和观察 KubeArmor 的官方命令行工具。
chartsKubeArmor 和 KubeArmor Operator 的官方 Helm charts。
policy-templates社区整理的 KubeArmor(以及 Cilium)System 和 Network 策略模板库。
kubearmor.iokubearmor.io 网站的源代码。
.projectCNCF .project 自动化(CLOMonitor、landscape 等)的项目元数据。

集成与适配器

仓库说明
otel-adapter用于接收 KubeArmor 事件和告警的 OpenTelemetry 接收器。
kubearmor-prometheus-exporter用于导出 KubeArmor 指标的 Prometheus 导出器。
kubearmor-relay-server用于聚合来自 KubeArmor 代理的事件的中继/日志流式传输服务器。
kubearmor-kafka-client用于将 KubeArmor 日志流式传输到 Kafka 集群的 Kafka 客户端。
kubearmor-log-client用于消费 KubeArmor 日志的独立日志客户端(stdout 或文件)。
grafana-datasource用于可视化 KubeArmor 数据的 Grafana 数据源后端。
kubearmor-dashboards用于 KubeArmor 日志和告警的 ELK 栈仪表板。
kubearmor-action针对工作负载运行 KubeArmor 以进行 CI 安全检查的 GitHub Action。
rancherui用于通过 Rancher 管理 KubeArmor 的 Rancher Manager UI 扩展。
sidekick用于将 KubeArmor 事件连接到下游生态系统的胶水代码。

部署与打包

仓库说明
custom-packages自定义 .deb / .rpm 打包定义。
packer-plugin-kubearmor用于将 KubeArmor 烘焙到镜像中的 HashiCorp Packer 插件。

专项项目

仓库简介
k8tls(发音为 cattles)—— 通过检测 TLS 和证书配置来评估服务器端口安全性。
modelarmorML 模型安全,包括 pickle 注入 PoC 和对抗性攻击演示。
kvm-service用于通过 Kubernetes 或非 Kubernetes 控制平面将 KubeArmor 策略编排到虚拟机和裸机主机的服务。
libbpf基于上游 libbpf API 的 Go eBPF 辅助库。
kbcKubeArmor 基准计算器。

此列表是迭代生成的——请提交拉取请求以添加新仓库或更正描述。