上一篇 (03) Wazuh 接入实战我们接进了第一台主机,告警开始流进你的 SOC。但很快你发现一个新问题:
“我管的几台服务器全在 Wazuh 里了,可办公室/家里的手机、电脑、IoT 设备——它们没装 agent,SOC 一点都不知道它们的存在。”
这是一个典型的盲区:小到家里的智能音箱,大到公司的小办公网络,没有 agent 也不想装 agent。但它们都连了同一台路由器——
这一篇解的就是这个问题。单台 TP-Link 路由器 = 一双看到全网的眼睛。你不需要在每台设备装什么,连上路由器的那一刻,它就在替你看所有流量了。
老规矩,先看路径:

这一篇假设你已经把 02 篇的部署 走完了——Loki 已经跑着、AI-miniSOC 已经能登录。剩下的就是让路由器把日志推过去。
为什么是路由器?
这个问题的答案其实和"为什么 Wazuh 是主机入侵检测的事实标准"是同一个思路——你不需要在每个观测点都装软件,找到那个"天然的汇聚点"就够了。
家庭/小公司网络里,所有设备上网都得经过路由器。路由器天然就知道两件事:
- 谁在上网:你的手机、笔记本、智能音箱——每台设备分配了 IP、MAC、主机名;
- 上了什么网:访问了哪些网站、用了什么应用、花了多久。
厂商(TP-Link/华为/小米/华硕/爱快……)基本都在路由器管理界面提供了"上网行为日志"功能。这功能默认是关的——因为它量大、占存储、绝大多数人用不上。但对我们做 SOC 的人来说,这正是最便宜、最全的内部数据源。
本篇以 TP-Link TL-R479GP-AC(商用 VPN 路由器,企业级、家庭都常见)为例。其他品牌原理相同——大致路径都是「开日志 → 配远程推送 → 接收端解析」。
💡 成本:零。你已经有的路由器 + 你已经有的 Loki + 一点配置时间。
第 1 步:路由器端开启日志(5 分钟)
不同品牌 UI 略不同,但核心三件事相同:
- 开启"上网行为日志"——大部分 TP-Link 在「行为管理 → 上网行为管理」里,默认是关闭状态。把它打开;
- 开启 syslog 远程推送——行为管理 → syslog 设置 → 启用 → 填 Loki 的 OTLP 接收端地址(一般填 Loki 服务的 IP + 3100 端口);
- 重启路由器让它生效。
关于如何在路由器上配置和开启上网行为分析请参考《通过TPLink路由器进行用户行为审计实战》
这一步做完,所有联网设备的"谁 + 干了什么"就会实时推到 Loki 里——24 小时约 20 万条日志(实测 78% 是访问网址、22% 是使用应用类型),量不大但价值密度高。
在路由器上配置上网行为日志外发到Loki 关于如何配置Loki作为日志服务器请参考《Loki+Alloy+Grafana构建轻量级的日志分析系统》
配置完成后就可以在AI-miniSOC看到路由器送过来的行为日志数据

🕳️ 坑 #1(血的教训):8 月我们栽过一次——tplink-collector 的
__main__.py在--test分支里连开了 3 个asyncio.run,第二个会抛RuntimeError: Event loop is closed。修法:三个测试分支各收敛为单次asyncio.run,收尾在同一循环内做。所以——升级到最新代码再跑。🕳️ 坑 #2:路由器日志里同时含公网 IP(如
8.160.215.x,被路由器作为"访问源"记下),解析时必须区分内网/公网,否则公网 IP 的"行为"会被误算成内网基线——评估模块里专门加了这一步。
第 2 步:让 AI-miniSOC 知道路由器(5 分钟)
把 tplink-collector 加到采集器层(上一篇讲过采集器是 Docker Compose 起的):
| |
TP-Link 管理界面(SLP)的密码用 XOR 混淆加密(不是明文也不是 RSA,是它自己的一套字符映射)——这部分逻辑在 collector 框架里已经实现,不用你操心。
过关标准:docker compose logs 里看到 registered to AI-miniSOC backend, device count: N,且 soc_assets 表里冒出你办公室那堆手机/电脑——包括平时不装的 IoT 设备。
路由器里的接入设备列表

同步到AI-miniSOC的设备

点开资产详情,可以看到资产的数据来源是TP- LINK路由器或Wazuh,不需要手工录入资产,解决手工录入资产导致的资产数据不准不及时的问题。

🕳️ 坑 #3:TP-Link SLP 登录接口要求
X-Requested-With: XMLHttpRequest请求头——少这个头服务器会返回 HTML 登录页(不是 JSON),采集器会卡在"解析 HTML 失败"上。这个坑集成在框架里了,但你如果写自己的脚本记得带上。
第 3 步:看每台设备在干什么(立刻)
第二步一旦通过,AI-miniSOC 的"行为画像"页就自动有内容了——不需要你做任何配置:
关于AI-miniSOC的“行为画像”请参考《从"凌晨在干啥"到"看清一个人"——我给 AI-miniSOC 做了套行为画像》
整体的行为画像
单个设备的行为画像
AI-miniSOC 行为画像:某台设备 24h 访问域名/应用类型/活跃时段,访问习惯与每个阶段都在干什么都可以清晰的展现

这一页能告诉你三件事:
- 最近 24 小时在访问什么域名——
api.github.com、i.yximgs.com、… 一个普通员工的工作日长什么样; - 活跃时段——
00:00-06:00突然活跃的设备要么是定时任务,要么值得看一眼; - 应用类型分布——是 web 流量为主、还是大量 P2P/远程桌面?后者该查查是不是被当跳板了。
这是 Wazuh 看不到的信息——Wazuh 只在装了 agent 的主机上活动;路由器则覆盖了所有联网设备。两个数据源互补。
第 4 步:异常检测——单台路由器能告诉你这些
路由器日志单独看只是"谁访问了什么",但聚合起来它能告诉你哪些事?6 类常见异常场景:

| # | 异常场景 | 路由器日志里的特征 | 真实例子 |
|---|---|---|---|
| ① | 未知域名爆增 | 同一 IP 短时间内访问大量陌生域名 | 自家设备上观察到的 stun-heyuan-v6.easytier.cn 隧道域名 |
| ② | 异常时段活跃 | 凌晨 3 点突然大量访问 | 04 篇真实场景 |
| ③ | 隧道/穿透类域名 | frp.* ngrok.* *.nat.* stun.* 等 | 内部主机被控后常见 |
| ④ | 大量访问公网 IP | 路由器 ip 标签中公网 IP 占比异常 | 数据外泄/代理出网 |
| ⑤ | 高风险应用/端口 | P2P/远程桌面/未知协议占比上升 | 内网被当跳板 |
| ⑥ | 影子设备接入 | 资产台账里没有的 IP 出现在流量里 | 访客/未授权设备 |

⚠️ 重要提醒:04 篇完成的是「检测能力 + 告警落地」,误报在所难免——比如某员工日常就在凌晨跑备份脚本。第一周多花点时间"调基线":哪些 IP 的行为算正常、哪些阈值合理。基线稳了,告警才是有价值的信号。
第 5 步:调基线(持续,1~2 周)
这一步是 6 类异常检测真正"为你所用"的关键:
- 每个 IP 维护自己的基线:192.168.0.8 的工作日白天高活跃是正常、192.168.0.30 的凌晨 3 点突然活跃就值得看;
- 告警阈值在配置中心调——AI-miniSOC 留了配置接口,不用改代码;
- 误报收集到一张表里(“我这台开发机的 GitHub Actions 经常凌晨跑批”),后续规则里加白名单。
💡 基线 ≠ 锁死:网络变了(公司新业务、新人入职、IoT 增减)基线就要跟着调。告警治理是一个长期调参过程,不是上线就完事。
收尾:常见问题
Q:我用的小米/华为/华硕路由器,能用吗?
A:原理相同(都是 syslog/远程日志),但具体 API 抓终端列表这一步需要适配——tplink-collector 是 TP-Link SLP 专用。其他品牌做适配或换 Wazuh agent 装到路由器上(OpenWrt 系支持)。本篇以 TP-Link 为例。
Q:性能影响大吗?一台路由器扛得住吗?
A:现代路由器日志吞吐是百万级/天级别,对 100 台以下设备网络根本不是瓶颈。真正可能扛不住的是 Loki 的存储——所以 01 篇架构里我们设了 7 天保留期(你也可以调长,但要相应扩磁盘)。
Q:能在公司用吗?合法吗?
A:员工上网行为监控确实有合规要求——网安法、企业内控条例都有规定。建议:①公司内部有明确告知(员工手册/入职签字);②日志只用于安全审计、不做绩效依据;③查阅权限分级(普通 IT 不看、能看的人需要审计)。这一篇只讲"技术上怎么接",合规的事请你和法务/HR 一起定。
Q:和 03 篇 Wazuh 是什么关系?
A:互补,不重叠。
- Wazuh = 装了 agent 的主机上的所有动作(文件、登录、进程……);
- 路由器 = 所有联网设备(包括没装 agent 的手机/IoT/访客)的网络行为。
理想的小公司 SOC 应该是两者都有:装 agent 的服务器/重要工位有 Wazuh;全员所有设备的网络流量由路由器统一采。
写在最后
00 篇回答"为什么做",01 篇回答"凭什么行",02 篇回答"怎么跑",03 篇回答"第一台主机的告警怎么看",这一篇回答"没装 agent 的那堆设备怎么也能管"。
回头看这条主线:你的 SOC 现在能看见装了 Wazuh 的服务器、没装 agent 但连了路由器的所有设备——这个覆盖度,对小公司/家庭网络已经足够全面。剩下的是怎么从数据里自动找出那些不对劲的事——下一篇 (05) Nmap 攻击面扫描——零 agent 接入主题的收官之作。
老李的路由器已经替他家三口人加四台 IoT 看着上网行为了。你的呢?
【系列导航】《一个人的SOC》总目录(持续更新)
【上一篇】(03) Wazuh 接入实战——把第一台主机纳管进你的 SOC
【系列开篇】(00) 中小企业为什么需要自己的安全运营中心
【项目地址】AI-miniSOC - GitHub · MIT 开源,欢迎 Star ⭐
https://github.com/xiejava1018/AI-miniSOC 同步gitee https://gitee.com/xiejava/AI-miniSOC
【交流】 路由器接入卡住了?把 docker compose logs tplink-collector 的输出发到 Issue,我会逐个回复。
作者博客:http://xiejava.ishareread.com/

关注:微信公众号,一起学习成长!