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

KubeArmor 是一个云原生运行时安全强制执行系统,它在系统层面限制 pod、容器和节点(VM)的行为(例如进程执行、文件访问和网络操作)。
KubeArmor 利用 Linux 安全模块(LSM),如 AppArmor、SELinux 或 BPF-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/裸机部署 |
架构概览

文档 :notebook:
- :point_right: 快速入门
- :dart: 使用场景
- :heavy_check_mark: KubeArmor 支持矩阵
- :chess_pawn: KubeArmor 有何不同?
- :scroll: Pod/容器安全策略 [规范] [示例]
- :scroll: Pod/容器的集群级安全策略 [规范] [示例]
- :scroll: 主机/节点安全策略 [规范] [示例]
- :scroll: 主机/节点网络安全策略 [规范] [示例]
... 详细文档
贡献者 :busts_in_silhouette:
- :blue_book: 贡献指南
- :technologist: 开发指南, 测试指南
- :raised_hand: 加入 KubeArmor Slack
- :question: 常见问题
双周会议
- :speaking_head: Zoom 链接
- :page_facing_up: 会议纪要: 文档
- :calendar: 日历邀请: Google Calendar, ICS 文件
社区与治理
KubeArmor 是一个由社区治理的项目。以下文档描述了项目的运作方式:
- :scroll: 治理 — 角色、决策机制、供应商中立性、子团队、投票。
- :busts_in_silhouette: 维护者 — 当前的维护者、审查者和荣誉维护者,及其所属机构。
- :handshake: 行为准则 — 我们遵循 CNCF 行为准则。
- :package: 发布流程 — 发布频率、发布候选版本、发布经理、支持窗口。
- :lock: 安全策略 — 如何报告漏洞。
通知/致谢 :handshake:
- KubeArmor 使用了 Tracee 的系统调用实用函数。
CNCF
KubeArmor 是云原生计算基金会(Cloud Native Computing Foundation)的 Sandbox Project。

路线图
KubeArmor 的路线图通过 KubeArmor Projects 进行跟踪。
相关仓库
KubeArmor 不仅仅是一个单独的仓库。以下位于 kubearmor GitHub 组织下的仓库是更广泛项目的一部分。每个仓库均受 GOVERNANCE.md 治理——请参阅其中的 Subprojects 部分,了解核心子项目和社区子项目的分类方式。
注意: 此列表涵盖积极维护的仓库。如需完整列表(包括已归档的),请参阅 organization page。
核心
| 仓库 | 说明 |
|---|---|
| KubeArmor | 主要的运行时安全执行守护进程。即本仓库。 |
| kubearmor-client | karmor,用于安装、配置和观察 KubeArmor 的官方命令行工具。 |
| charts | KubeArmor 和 KubeArmor Operator 的官方 Helm charts。 |
| policy-templates | 社区整理的 KubeArmor(以及 Cilium)System 和 Network 策略模板库。 |
| kubearmor.io | kubearmor.io 网站的源代码。 |
| .project | CNCF .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 和证书配置来评估服务器端口安全性。 |
| modelarmor | ML 模型安全,包括 pickle 注入 PoC 和对抗性攻击演示。 |
| kvm-service | 用于通过 Kubernetes 或非 Kubernetes 控制平面将 KubeArmor 策略编排到虚拟机和裸机主机的服务。 |
| libbpf | 基于上游 libbpf API 的 Go eBPF 辅助库。 |
| kbc | KubeArmor 基准计算器。 |
此列表是迭代生成的——请提交拉取请求以添加新仓库或更正描述。