Gethubsathvik/SOC-SIEM-Platform
GitHub: Gethubsathvik/SOC-SIEM-Platform
一个基于 FastAPI 和 React 构建的容器化 SIEM 平台,用于集中式安全监控、威胁检测和事件响应流程模拟。
Stars: 2 | Forks: 0
# SOC SIEM 平台
一个生产级的安全信息和事件管理(SIEM)平台,使用 Python、FastAPI、PostgreSQL、Redis、React、Tailwind CSS、Docker 和 Telegram 通知构建。
## 本项目包含的内容
- 使用 FastAPI 构建的后端 API
- Agent 注册和日志接入
- 基于 YAML 的检测规则
- 告警和事件生命周期管理
- 威胁情报查询钩子
- 身份验证和支持 JWT 的端点
- 基于 React + Vite 的前端仪表板
- 登录界面
- 概览、告警、事件、日志、分析视图
- `rules` 目录下的规则包
- 使用 Docker Compose 进行容器化部署
## 支持的技术
- 后端:Python 3.12+、FastAPI、SQLAlchemy、Pydantic、Uvicorn
- 数据:PostgreSQL、Redis、Celery、Flower
- 前端:React 18、Vite、Tailwind CSS、Axios、Recharts
- 基础设施:Docker、Docker Compose、Nginx
- 安全自动化:YAML 规则、Telegram 集成
## 项目结构
```
.
├── backend/
│ ├── app/
│ │ ├── agents/
│ │ ├── api/
│ │ ├── core/
│ │ ├── models/
│ │ ├── schemas/
│ │ ├── services/
│ │ └── workers/
│ ├── scripts/
│ ├── tests/
│ ├── main.py
│ └── requirements.txt
├── frontend/
│ ├── public/
│ ├── src/
│ │ ├── components/
│ │ ├── pages/
│ │ ├── services/
│ │ ├── App.jsx
│ │ └── main.jsx
├── docker/
├── rules/
├── docker-compose.yml
└── README.md
```
## 快速开始
### 一行命令
使用以下命令运行整个项目:
- `docker-compose up --build -d`
### 手动步骤
1. 复制示例环境变量文件:
- 在 Linux/macOS 上运行 `cp backend/.env.example backend/.env`
- 在 Windows 上运行 `copy backend\.env.example backend\.env`
2. 如有需要,请检查并调整 `backend/.env` 中的值。
3. 启动技术栈:
- `docker-compose up --build -d`
4. 在 `http://localhost:3000` 打开用户界面。
5. 使用默认凭据登录:
- 用户名:`admin`
- 密码:`admin123`
### 停止项目
- `docker-compose down`
### 查看日志
- `docker-compose logs -f backend`
- `docker-compose logs -f frontend`
## 本地开发
### 后端
- 安装依赖:
- `pip install -r backend/requirements.txt`
- 在本地运行 API:
- `uvicorn main:app --reload --app-dir backend`
### 前端
- 安装依赖:
- `npm install`
- 启动 Vite 开发服务器:
- `npm run dev`
### API 文档
- Swagger UI: `http://localhost:8000/docs`
- ReDoc: `http://localhost:8000/redoc`
## 环境变量
- `DATABASE_URL`
- `REDIS_URL`
- `SECRET_KEY`
- `TELEGRAM_BOT_TOKEN`
- `TELEGRAM_CHAT_ID`
- `ABUSEIPDB_API_KEY`
- `VIRUSTOTAL_API_KEY`
## 故障排除
- 如果后端无法连接到 PostgreSQL,请确保 Docker 服务已启动(使用 `docker-compose ps` 查看)。
- 如果前端无法连接到 API,请检查 Vite 代理目标,或直接使用 `http://localhost:8000`。
- 如果您更改了规则,请通过 API 端点 `POST /api/v1/rules/reload` 重新加载它们。
## 注意事项
此仓库是一个 SOC SIEM 启动平台。它旨在用于学习、原型设计和本地实验室环境,其中部分集成为占位符或需要外部凭据。
标签:搜索引擎查询, 测试用例, 请求拦截, 逆向工具