Cloud Native Security Inspector 项目教程
1. 项目介绍
Cloud Native Security Inspector(项目代号 Narrows)是一个开源的云原生运行时安全工具。它允许终端用户在运行时评估 Kubernetes 集群的安全态势。该项目将添加动态扫描功能,使安全审计员能够更好地了解和控制正在运行的工作负载。
主要功能
- 查看应用程序的总体安全态势
- 基于策略的扫描管理
- 根据需要修订基线策略,防止从易受攻击的镜像重新部署工作负载
- 隔离不安全的工作负载
- 审查和过滤评估报告
- 事件驱动的 Kubernetes 配置安全监控
- 开放框架,支持任何扫描器和报告消费者
架构
Cloud Native Security Inspector 由以下组件组成:
- Controller Manager: 帮助协调 Setting 和 InspectionPolicy CR,然后提供扫描器工作负载。
- Portal: 由 Narrows 核心团队开发的 UI,用于进行 Setting/Policy 管理、审查报告和检查总体安全态势。
- Exporter: 扫描器和报告消费者之间的枢纽。任何扫描器都可以按照协议将报告发送到 Exporter。Exporter 也易于扩展以支持更多的报告消费者。
- 报告消费者: 安全报告的导出目标。目前 Exporter 支持将报告导出到 Opensearch 和 Elasticsearch。
2. 项目快速启动
前提条件
- Ubuntu Linux 作为安装机器的操作系统
- Kubernetes 1.24
- Harbor 2.5.0+ 已部署,并且 Harbor 中的漏洞扫描已配置
kubectl
和docker
命令已准备好使用
部署选项
选项 1: 使用 Helm Chart
请参考此文档获取详细信息。
选项 2: 使用 deploy.sh
脚本
$ git clone https://github.com/vmware-tanzu/cloud-native-security-inspector.git
$ cd cloud-native-security-inspector
$ ./deploy.sh install
构建自定义镜像
$ git clone https://github.com/vmware/cloud-native-security-inspector.git
$ cd cloud-native-security-inspector
$ ./deploy.sh install --build-source
验证部署
~ → kubectl get all -n cnsi-system
3. 应用案例和最佳实践
应用案例
- 动态安全扫描: 在运行时对 Kubernetes 工作负载进行安全扫描,确保应用程序的安全性。
- 策略管理: 通过策略管理功能,确保所有工作负载都符合安全标准。
- 事件驱动监控: 实时监控 Kubernetes 配置,及时发现并修复安全问题。
最佳实践
- 定期扫描: 定期对 Kubernetes 集群进行安全扫描,确保及时发现并修复漏洞。
- 策略优化: 根据实际需求优化安全策略,确保策略的灵活性和有效性。
- 报告审查: 定期审查安全报告,确保所有安全问题都得到及时处理。
4. 典型生态项目
- Harbor: 用于镜像的静态漏洞分析。
- Trivy: 用于动态安全应用程序测试(DAST)。
- Kubebench: 用于检查 Kubernetes 集群是否安全部署。
- Opensearch: 用于存储和分析安全报告。
通过这些生态项目的结合,Cloud Native Security Inspector 能够提供全面的安全解决方案,确保 Kubernetes 集群的安全运行。