kiurakku/Honeypot-Security-System
GitHub: kiurakku/Honeypot-Security-System
基于 Python、Go、C++ 多语言架构的容器化蜜罐安全实验室,集成攻击记录、日志存储与可观测性监控,用于安全研究与攻防实验。
Stars: 0 | Forks: 0
# Honeypot-Security-System

[](https://github.com/kiurakku/Honeypot-Security-System/actions/workflows/build-and-test.yml)

**联系:** [](https://github.com/kiurakku) [](https://t.me/SyntacticSugar) [](mailto:yanginero@outlook.com)
多语言 Honeypot 实验室:**Flask**(攻击记录),**Go**(HTTP 请求记录 → Postgres),**C++**(演示流量采样器),**nginx**,**Prometheus/Grafana**,**Terraform**(可选基础设施)。
## 架构
```
Client → nginx:80 → app:5000 (Flask /attack)
→ go-service:8080 (/log → Postgres.logs)
Prometheus ← app:8000 (metrics)
C++ analyzer → logs/attacks.log (sidecar demo)
Postgres ← attacks + logs tables
```
## 快速开始
```
git clone https://github.com/kiurakku/Honeypot-Security-System.git
cd Honeypot-Security-System
cp .env.example .env # optional — compose defaults work for dev
docker compose up -d --build
```
| 服务 | URL |
|---------|-----|
| Flask app | http://localhost:5000 |
| Health | http://localhost:5000/health |
| Go logger | http://localhost:8080/log |
| nginx | http://localhost:80 |
| Prometheus | http://localhost:9090 |
| Grafana | http://localhost:3000 |
### 记录测试攻击
```
curl -X POST http://localhost:5000/attack \
-H 'Content-Type: application/json' \
-d '{"attack_type":"ssh-bruteforce","source_ip":"203.0.113.10"}'
curl http://localhost:8080/log
```
冒烟测试脚本(Linux/macOS/WSL):`bash scripts/smoke-test.sh`
## 配置
所有服务使用相同的变量(参见 `.env.example`):
| 变量 | 默认值 |
|----------|---------|
| `POSTGRES_DB` | `honeypot` |
| `POSTGRES_USER` | `honeypot` |
| `POSTGRES_PASSWORD` | `honeypot_secret` |
## 测试 & CI
- **CI:** `build-and-test.yml` — 构建 Go/C++,`docker compose` 冒烟测试。
- 本地:`docker compose up -d db app go-service` → POST `/attack` → GET `/log`。
## 安全说明
- 仅限**实验室**使用;在没有网络隔离的情况下,请勿部署到生产环境。
- 请勿提交真实的 credentials;在公开部署前请更改密码。
## License
GNU General Public License v3.0
标签:API集成, Docker, ECS, EVTX分析, Terraform, 凭证窃取, 可观测性, 多语言架构, 安全实验室, 安全防御评估, 日志审计, 测试用例, 版权保护, 自定义请求头, 蜜罐, 证书利用, 请求拦截