菜单
关于 服务 历程 与我合作
Network security visualization
Security 2026年3月7日 • 25分钟阅读

HoneyAegis:构建你自己的AI驱动蜜罐网络

Deploy a self-hosted honeypot with local AI analysis. Pi 5 sensor, Kali brain, Docker deployment. Complete data sovereignty—no cloud, no subscriptions.

分享:
Lee Foropoulos

Lee Foropoulos

25分钟阅读

The Hacker's Path:配套指南

本文是第1部分:入门第2部分:Flipper精通的续篇。你已经学会了攻击,现在来构建你的防御。

$5,000/yr
像Thinkst Canary这样的商业蜜罐平台仅五台设备的费用。HoneyAegis只需一个Pi的价格。

上个月我调查了商业蜜罐平台的价格。Thinkst Canary要价每年5000美元,只覆盖五台设备。其他厂商按传感器按月收费,而且你的威胁数据会先经过他们的基础设施。他们比你更早看到你的攻击者。

这太荒谬了。

蜜罐是一个专门设计来被攻击的诱饵系统。你部署假服务(SSH、SMB、FTP),然后观察会发生什么。攻击者以为他们在入侵一台真正的服务器,但实际上他们正在向你提供关于他们的工具、技术和目标的情报。这就是进攻性防御。

概念很简单。实施不应该花费一笔房贷那么多。

蜜罐是一个专门设计来被攻击的诱饵系统。攻击者以为他们在入侵一台真正的服务器,但实际上他们正在向你提供关于他们的工具、技术和目标的情报。

所以我们构建了HoneyAegis:一个自托管的、Docker原生的蜜罐平台,带有本地AI分析功能。一台Raspberry Pi 5运行传感器,一台旧的Alienware笔记本电脑运行大脑。一切都留在你的网络里。没有云。没有订阅。没有供应商比你更早看到你的威胁数据。

一个下午完成部署。永远归你所有。

什么是蜜罐?

在开始构建之前,先弄清楚我们要构建什么。

蜜罐是一个故意设置漏洞的系统,用来吸引攻击者。它看起来足够真实,可以欺骗自动扫描器和好奇的黑客,但它完全是假的。没有真实数据、没有真实用户、没有真实服务,只有记录一切的模拟服务。

为什么需要一个?

  • 早期预警: 攻击者会先攻击你的蜜罐,然后才会攻击你的真实系统。你可以提前发现他们。
  • 威胁情报: 了解他们使用什么工具、尝试什么凭证、追求什么目标。
  • 攻击模式: 建立一个针对你网络暴露面的特定技术数据库。
  • 培训: 实时观察真实攻击。比任何模拟都好。
  • 渗透测试: 为你自己的攻击演练提供安全目标。

HoneyAegis模拟的内容

Cowrie: SSH和Telnet蜜罐。记录完整的会话记录,捕获凭证,记录命令。

Dionaea: 捕获恶意软件。模拟SMB、FTP、HTTP和其他服务。存储载荷用于分析。

OpenCanary: 多服务蜜罐。模拟Windows共享、MySQL、SSH等。高度可配置。

双节点架构

HoneyAegis使用刻意的分离:传感器面向互联网,大脑保持受保护状态。

互联网 ──► 路由器(端口转发) ──► Pi 5 传感器
                                           │
                                           │ Vector(日志)
                                           ▼
内部网络 ◄──────► Alienware 大脑
                              │
                              ├── PostgreSQL + TimescaleDB
                              ├── FastAPI Backend
                              ├── Ollama(本地AI)
                              ├── Next.js Dashboard
                              └── Redis + Celery

为什么要分离?

传感器是故意暴露的。它会被攻击。这就是全部意义。如果发生灾难性问题,如果攻击者从蜜罐容器中逃逸,Pi只是一个60美元的设备,上面除了诱饵什么都没有。擦除,重新部署。三十分钟。

大脑包含所有有价值的东西:你的数据库、仪表板、AI分析、历史攻击数据。它永远不接触互联网。它位于你的内部网络中,通过安全通道接收传感器的日志。

⚠️ 大脑绝不能暴露在互联网上

向大脑做端口转发意味着即时沦陷。大脑有你的PostgreSQL数据库、API、仪表板。暴露它就是邀请攻击者进入你的真实基础设施。只有传感器接受端口转发。只有蜜罐端口。其他什么都不行。

硬件配置

这是我们运行的配置。这不是唯一有效的配置,而是用我们已有硬件的最优设置。

节点1 — 传感器(Raspberry Pi 5 4GB)

组件规格
角色专用蜜罐传感器
操作系统Raspberry Pi OS (64-bit)
CPUBroadcom BCM2712,四核 Cortex-A76 @ 2.4 GHz
RAM4 GB LPDDR4X
存储microSD 或通过 HAT 的 NVMe
服务Cowrie、Dionaea、OpenCanary、Vector、HoneyAegis插件
RAM使用量估计约2到2.5 GB
网络暴露在互联网(仅蜜罐端口)

节点2 — 大脑(Alienware 15 R3)

组件规格
角色后端、AI分析、仪表板、数据库
操作系统Kali GNU/Linux 2025.4 (rolling)
CPUIntel Core i7-7700HQ (4核 / 8线程 @ 2.8 GHz)
GPUNVIDIA GeForce GTX 1070 Mobile — 8 GB VRAM
RAM16到32 GB(建议最低16 GB)
NICQualcomm Atheros Killer E2500 Gigabit Ethernet
服务FastAPI、PostgreSQL+TimescaleDB、Redis、Celery、Ollama、Next.js、Traefik
RAM使用量估计约7.2 GB
网络仅内部 — 绝不暴露

为什么选GTX 1070?

本地AI需要GPU加速才能实用。GTX 1070有8GB VRAM,足以舒适地运行Ollama配合llama3.1:8b。这让你获得AI生成的威胁摘要,而无需向OpenAI或Anthropic发送数据。AI用通俗易懂的语言解释攻击者在做什么,完全在你自己的硬件上运行。

分步设置:Pi 5传感器

让我们从零开始构建。先从传感器开始,也就是面向互联网的Pi 5。

第1阶段:Raspberry Pi 5传感器设置

时间: 45分钟

前提条件: Raspberry Pi 5(4GB)、microSD卡或NVMe HAT、电源、网线、另一台有SSH的电脑

1.1 刷写Raspberry Pi OS

在你的电脑上下载Raspberry Pi Imager。插入microSD卡。

# In Raspberry Pi Imager:
# 1. Choose Device: Raspberry Pi 5
# 2. Choose OS: Raspberry Pi OS Lite (64-bit)
# 3. Choose Storage: Your microSD card
# 4. Click the gear icon for advanced options:
#    - Set hostname: honeypot-sensor
#    - Enable SSH with password authentication
#    - Set username/password (not pi/raspberry)
#    - Configure WiFi if needed (but use Ethernet)
# 5. Write the image

将卡插入Pi 5,连接网线并通电。

1.2 初始配置

通过SSH连接到你的Pi:

bash# 从你的电脑
ssh [email protected]

# 更新所有内容
sudo apt update && sudo apt upgrade -y

# 安装基本工具
sudo apt install -y git curl vim htop

1.3 设置静态IP

你的Pi需要一个可预测的IP来进行端口转发。用你网络的方案替换IP地址:

bash# 检查当前连接名称
nmcli con show

# 设置静态IP(根据你的网络调整)
sudo nmcli con mod "Wired connection 1" ipv4.addresses 192.168.1.50/24
sudo nmcli con mod "Wired connection 1" ipv4.gateway 192.168.1.1
sudo nmcli con mod "Wired connection 1" ipv4.dns "8.8.8.8,8.8.4.4"
sudo nmcli con mod "Wired connection 1" ipv4.method manual
sudo nmcli con up "Wired connection 1"

# 验证
ip addr show eth0

1.4 安装Docker

bash# 使用便捷脚本安装Docker
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh

# 将用户添加到docker组
sudo usermod -aG docker $USER

# 安装Docker Compose插件
sudo apt install -y docker-compose-plugin

# 退出并重新登录以使组更改生效
exit

# 重新SSH连接,然后验证
docker --version
docker compose version

1.5 部署HoneyAegis传感器

bash# 克隆仓库
git clone https://github.com/thesecretchief/HoneyAegis.git
cd HoneyAegis

# 复制环境模板
cp .env.example .env

# 编辑配置
nano .env

.env文件中设置这些值:

bash# 传感器配置
HONEYAEGIS_MODE=sensor
BRAIN_HOST=192.168.1.100  # 你的Alienware的IP
SENSOR_NAME=pi5-sensor-01

部署传感器堆栈:

bash# 启动传感器服务
docker compose --profile sensor up -d

# 观察容器启动
docker ps
# 预期容器:
# - honeyaegis-cowrie(SSH/Telnet蜜罐)
# - honeyaegis-dionaea(恶意软件捕获)
# - honeyaegis-opencanary(多服务)
# - honeyaegis-vector(日志传输)

# 检查日志确认一切正常
docker compose logs -f
Raspberry Pi computer board
Pi 5是完美的一次性传感器,便宜到出了问题也不心疼

分步设置:Alienware大脑

现在是大脑,处理一切的受保护节点。

第2阶段:Alienware大脑设置

时间: 30分钟

前提条件: 已安装Kali Linux、已配置NVIDIA驱动、与Pi在同一网络

2.1 验证Kali和NVIDIA

bash# 检查Kali版本
cat /etc/os-release

# 验证NVIDIA驱动正常工作
nvidia-smi
# 你应该看到:
# - 驱动版本(推荐535+)
# - GTX 1070 约8GB VRAM
# - CUDA版本

2.2 在Kali上安装Docker

bash# 更新并安装Docker
sudo apt update
sudo apt install -y docker.io docker-compose-v2

# 启用并启动Docker
sudo systemctl enable docker
sudo systemctl start docker

# 将用户添加到docker组
sudo usermod -aG docker $USER

# 退出并重新登录,然后验证
docker --version
docker compose version

2.3 安装NVIDIA Container Toolkit

这让Docker容器可以访问你的GPU,Ollama需要它:

bash# 添加NVIDIA container toolkit仓库
distribution=$(. /etc/os-release; echo $ID$VERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | \
  sudo tee /etc/apt/sources.list.d/nvidia-docker.list

# 安装toolkit
sudo apt update
sudo apt install -y nvidia-container-toolkit

# 配置Docker使用NVIDIA运行时
sudo nvidia-ctk runtime configure --runtime=docker
sudo systemctl restart docker

# 在容器中测试GPU访问
docker run --rm --gpus all nvidia/cuda:12.0-base nvidia-smi

2.4 部署HoneyAegis大脑

bash# 克隆仓库
git clone https://github.com/thesecretchief/HoneyAegis.git
cd HoneyAegis

# 复制环境模板
cp .env.example .env

# 编辑配置
nano .env

配置大脑:

bash# 大脑配置
HONEYAEGIS_MODE=brain
OLLAMA_GPU=true
POSTGRES_PASSWORD=your-strong-password-here
JWT_SECRET=another-strong-secret
ADMIN_PASSWORD=dashboard-admin-password

部署:

bash# 启动完整的大脑堆栈
docker compose --profile brain up -d

# 首次运行需要几分钟
# 观察进度:
docker compose logs -f

# 容器启动后,下载AI模型
docker exec -it honeyaegis-ollama ollama pull llama3.1:8b
# 下载约4.7GB - 需要几分钟

# 验证所有容器
docker ps
# 预期容器:
# - honeyaegis-fastapi(API后端)
# - honeyaegis-postgres(数据库)
# - honeyaegis-redis(缓存/队列)
# - honeyaegis-celery(后台工作进程)
# - honeyaegis-ollama(本地AI)
# - honeyaegis-nextjs(仪表板)
# - honeyaegis-traefik(反向代理)
Server room with glowing network equipment
大脑节点在你的内部网络中受到保护,处理永不离开你基础设施的攻击数据

关键要点

你的蜜罐传感器是故意暴露的。你的大脑节点绝不能暴露。这种分离是整个架构的基础。如果攻击者从Pi上的容器中逃逸,他们找不到任何有价值的东西。你的数据、仪表板和AI分析在内部网络中安全无虞。

网络配置

这是人们犯错的地方。仔细阅读。

⚠️ 端口转发规则

只转发这些端口到Pi传感器:

服务外部端口内部(Pi)端口协议
SSH蜜罐222222TCP
Telnet蜜罐232223TCP
FTP蜜罐212121TCP
SMB蜜罐4454450TCP

绝不转发这些:

  • 端口3000(仪表板)
  • 端口8000(API)
  • 端口5432(PostgreSQL)
  • 端口6379(Redis)
  • 任何端口到Alienware

登录你的路由器,配置端口转发到Pi的静态IP(在我们的例子中是192.168.1.50)。蜜罐服务在内部运行在高端口上,但攻击者从外部看到的是标准端口。

访问仪表板

从内部网络中的任何电脑:

bash# 在浏览器中打开:
http://192.168.1.100:3000

# 默认凭证(立即更改!):
# 用户名:admin
# 密码:(你在ADMIN_PASSWORD中设置的值)

你将看到:

  • 实时攻击源: 攻击发生时的实时流
  • GeoIP地图: 攻击来源的可视化表示
  • 会话录制: SSH/Telnet会话的完整记录,可导出为MP4/GIF
  • AI摘要: Ollama生成的攻击模式通俗解释
  • 统计: 攻击频率、常见凭证、目标服务
  • 告警配置: 通过Apprise设置Slack、Discord、邮件通知

使用HoneyAegis进行渗透测试

这才是有趣的部分。你的蜜罐是练习攻击技术的安全目标

练习:攻击你自己的蜜罐

从Kali(目标是Pi的内部IP):

  1. 对Pi运行nmap查看暴露的服务
  2. 用Hydra尝试SSH暴力破解
  3. 尝试SMB枚举
  4. 观察仪表板实时亮起
  5. 阅读AI对你攻击的分析
bash# 扫描你的蜜罐
nmap -sV -p 22,23,445,21 192.168.1.50

# SSH暴力破解(Cowrie会接受一切并记录)
hydra -l root -P /usr/share/wordlists/rockyou.txt ssh://192.168.1.50:2222

# 手动连接并探索
ssh [email protected] -p 2222
# 尝试常见密码 - Cowrie会接受它们

# 检查仪表板 - 你的会话立即出现
# 观察AI解释你做了什么

与The Hacker's Path的整合:

  • 第3部分(Kali基础): 使用蜜罐作为侦察目标
  • 第4部分(利用): 在受控环境中练习Metasploit
  • 第5部分(完整审计): 将蜜罐部署作为防御组件纳入

在同一个Pi上运行Home Assistant?

简短回答:别这样做。

⚠️ 保持蜜罐隔离

你的蜜罐传感器是故意暴露在互联网上的。它会被攻击,这就是目的。在同一设备上运行Home Assistant,意味着你的智能家居控制距离攻击者只有一次容器逃逸的距离。如果出了问题,你希望爆炸半径限制在假服务上,而不是你真正的门锁和恒温器。给Home Assistant用一个单独的Pi。

好消息是?那约1.5 GB的余量并没有浪费。HoneyAegis还有增长空间。

更好地利用Pi的容量

与其在暴露的设备上塞满无关的服务,不如将余量用于更深入的蜜罐功能:

Pi 5 4GB RAM预算(专用传感器)

系统开销约500 MB
Cowrie(SSH/Telnet)约300 MB
Dionaea(恶意软件捕获)约400 MB
OpenCanary(多服务)约200 MB
Vector(日志传输)约100 MB
基础总计约1.5 GB
可用于扩展约2.5 GB

路线图:即将加入HoneyAegis

我们正在积极为HoneyAegis GitHub项目开发额外的传感器模块。计划中的补充包括:

  • Conpot(约200 MB) — 工业控制系统蜜罐。模拟PLC和SCADA系统。
  • Mailoney(约100 MB) — SMTP蜜罐。捕获垃圾邮件机器人和凭证收集器。
  • Elasticpot(约150 MB) — Elasticsearch蜜罐。捕获扫描暴露集群的机器人。
  • ADBHoney(约100 MB) — Android Debug Bridge蜜罐。检测针对移动设备的攻击者。
  • 蜜标 — 在使用时触发告警的假AWS凭证和API密钥。

架构就是为此而设计的。HoneyAegis使用模块化的Docker Compose结构,每个新蜜罐作为容器加入,Vector将其日志发送到大脑。给仓库加星以关注开发进度,或贡献你自己的模块。

原则: 让你的蜜罐传感器专注做好一件事:成为一个有吸引力的、隔离的目标,向大脑提供情报。在Home Assistant应该在的地方,也就是另一台设备上运行它。

相关阅读:Operation Smart Home介绍专用的Home Assistant设置,你的WiFi能看到你在移动解释了在独立硬件上的WiFi感知。

故障排除与维护

bash# 查看日志(两个节点)
docker compose logs -f
docker compose logs -f service-name

# 重启服务
docker compose restart cowrie

# 检查容器资源使用
docker stats

# 数据库备份(在大脑上)
docker exec honeyaegis-postgres pg_dump -U honeyaegis honeyaegis > backup.sql

# 更新HoneyAegis
git pull
docker compose pull
docker compose up -d

# 清理旧攻击数据(小心!)
docker exec honeyaegis-postgres psql -U honeyaegis -c \
  "DELETE FROM sessions WHERE created_at < NOW() - INTERVAL '30 days';"

常见问题:

  • 端口冲突: 另一个服务占用了蜜罐端口。用netstat -tlnp检查
  • NVIDIA驱动不匹配: Container toolkit版本必须与驱动匹配。驱动更新后重新安装toolkit。
  • Vector不发送日志: 检查docker compose logs vector。通常是节点间的网络/防火墙问题。
  • Ollama慢:docker exec honeyaegis-ollama nvidia-smi验证GPU访问
HoneyAegis部署计划 0/6

下一步

你现在拥有一个生成真实威胁情报的生产蜜罐网络。以下是如何发展它:

  • 让它运行一周。 你会惊讶于攻击出现的速度,通常在几小时内。
  • 调整蜜罐的"粘性"。 配置Cowrie模拟更真实的文件系统,让攻击者参与更长时间。
  • 添加蜜标。 部署在使用时立即触发告警的假凭证。
  • 整合威胁源。 连接MISP或AbuseIPDB获取更丰富的攻击者上下文。
  • 扩展传感器群。 在不同的网络出口点部署额外的Pi传感器。

商业平台收费每年5000美元来展示什么在攻击你的网络。你刚刚用一个Pi的成本和一些电费构建了同样的能力。无论你是否在看,攻击者都会来。现在你在看了。

部署清单

☐ Pi 5: 已分配静态IP、Docker已安装、传感器堆栈运行中

☐ Alienware: NVIDIA工具包已安装、Docker运行中、大脑堆栈已部署

☐ Ollama: llama3.1:8b模型已下载、GPU加速已验证

☐ 网络: 端口转发已配置(仅蜜罐端口!)

☐ 大脑隔离: 已验证大脑没有互联网暴露

☐ 仪表板: 通过内部IP可访问、管理员密码已更改

☐ Vector: 日志从传感器流向大脑

☐ 首次攻击: 通过攻击自己的蜜罐进行测试

☐ AI分析: 已验证Ollama生成威胁摘要

The Hacker's Path

本指南配合安全系列文章。

第1部分:入门 第2部分:Flipper精通 HoneyAegis指南 ✓ 第3部分:Kali基础 第4部分:利用

How was this article?

分享

Link copied to clipboard!

You Might Also Like

Lee Foropoulos

Lee Foropoulos

Business Development Lead at Lookatmedia, fractional executive, and founder of gotHABITS.

🔔

Bu cuoguo renhe wenzhang

Xin wenzhang fabu shi huoqu tongzhi. Wu xu dianzi youjian.

You xinwenzhang shi ninjianghui kandao wangzhan banner he liulanqi tongzhi (xu yunxu).

Jin liulanqi tongzhi. Wu laji youjian.