Matano 开源安全数据湖项目教程
项目介绍
Matano 是一个开源的安全数据湖项目,专为威胁狩猎、检测与响应以及网络安全分析设计,能够在 AWS 上处理 PB 级数据规模。Matano 提供了一个强大的平台,用于集中存储、查询和分析大量安全日志数据,帮助组织有效应对各种网络安全威胁。
项目快速启动
安装 Matano CLI
首先,需要安装 Matano CLI 工具来部署和管理 Matano 项目。以下是针对 Linux 和 macOS 的安装命令:
Linux
curl -OL https://github.com/matanolabs/matano/releases/download/nightly/matano-linux-x64.sh
chmod +x matano-linux-x64.sh
sudo ./matano-linux-x64.sh
macOS
curl -OL https://github.com/matanolabs/matano/releases/download/nightly/matano-macos-x64.sh
chmod +x matano-macos-x64.sh
sudo ./matano-macos-x64.sh
初始化和部署
安装完成后,运行以下命令来初始化 Matano 项目并部署到 AWS 账户:
matano init
确保 AWS 凭证已配置在环境变量中或 AWS CLI 配置文件中。Matano CLI 将引导你完成初始化过程,包括生成初始 Matano 目录、初始化 AWS 账户并部署项目。
应用案例和最佳实践
日志源管理
Matano 支持多种日志源,如 AWS CloudTrail 和 Zeek。以下是一个示例目录结构,展示了如何管理日志源:
➜ example-matano-dir git:(main) tree
├── detections
│ └── aws_root_credentials
│ ├── detect.py
│ └── detection.yml
├── log_sources
│ ├── cloudtrail
│ │ ├── log_source.yml
│ │ └── tables
│ │ └── default.yml
│ └── zeek
│ ├── log_source.yml
│ └── tables
│ └── dns.yml
├── matano-config.yml
└── matano-context.json
检测规则编写
在 detections
目录下,可以编写自定义的检测规则。例如,aws_root_credentials
目录包含了一个检测规则的 Python 脚本和配置文件。
部署更新
当添加新的日志源或编写新的检测规则时,运行以下命令来部署更新:
matano deploy
典型生态项目
Matano 作为一个安全数据湖项目,与其他开源安全工具和项目紧密集成,形成了一个强大的生态系统。以下是一些典型的生态项目:
- AWS CloudTrail: 用于记录 AWS 账户的活动日志。
- Zeek: 一个网络分析框架,用于深度数据包检测和日志生成。
- Sigma: 一个开源的通用签名格式,用于编写检测规则。
通过这些生态项目的集成,Matano 能够提供一个全面的安全分析平台,帮助组织更好地理解和应对网络安全威胁。