惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

罗磊的独立博客
Recent Announcements
Recent Announcements
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
有赞技术团队
有赞技术团队
J
Java Code Geeks
T
The Blog of Author Tim Ferriss
MyScale Blog
MyScale Blog
人人都是产品经理
人人都是产品经理
aimingoo的专栏
aimingoo的专栏
U
Unit 42
The GitHub Blog
The GitHub Blog
云风的 BLOG
云风的 BLOG
T
Tailwind CSS Blog
H
Hackread – Cybersecurity News, Data Breaches, AI and More
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - 三生石上(FineUI控件)
Apple Machine Learning Research
Apple Machine Learning Research
小众软件
小众软件
Hugging Face - Blog
Hugging Face - Blog
博客园 - 司徒正美
腾讯CDC
I
InfoQ
GbyAI
GbyAI
博客园_首页

V2EX

我用 AI 写代码,但终端管理反而成了累赘——于是我做了 codux [调研] 各位在公司都用什么 ide 和 agent 写代码? 老运维 share 一个运维平台 看到有公司考核 token 指标,很好奇大家上个月的 AI 账单是多少 GLM-Coding 调用持续报错: z.ai 的 Lite 套餐几乎无法使用,官方 Pro/Max 是否稳定? 现在还有什么渠道可以稳定安全地使用 Claude 吗? 上海漕河泾内推,本组有 2 个 hc,一个后端,一个前端,预算都是 20k 左右,不打卡,氛围好 如果 V2EX 上有一组不永久保存聊天记录(比如只保存 7 天或者 24 小时)的聊天室,那么会开启哪些有用或者有趣的可能? gemini cli 貌似挂了,一直返回 403 第一次在自媒体上赚到钱 收集了最近在使用的低价 GPT, Gemini,邮箱等 AI 会员的小店合集 讨论个大实话:现在企业还在说 AI 编程提效 20%, 30%的,真的太落后,没用懂 AI。因为包括很多前沿公司,已经狂奔到提效 200%-500%的情况 [招聘][远程][币安] 前端/后端/QA/iOS/Android 至少 3 年以上经验 目前有大量 HC 欢迎投递 Chatgpt Pro 用量用不完的可以开这些设置 面试的时候好像遇到钓鱼了,给各位避个坑 cursor 年续费 22 号到期, 自动续费是否还是老的计次套餐呢 被两件破事毁掉的一下午,琐碎的内耗消磨人的精力 使用 Planet 存储 Codex 的会话或者重要信息 如果业务部门领导不要你开发功能,而是要求你教会它用 claude code 开发功能,你会怎么做? 分享一个 MacOS 接绿联 CM818 USB 转 DP 转接器使用感受 我的 HR 朋友 10 年老 Java ,非全大专,大家帮忙看看简历 开源了一个 AI 口语练习工具,音素级发音评分,完全免费可自部署 V2EX 上有哪些你觉得很有趣、印象深刻的妹纸? 字节为啥不出个国内版 Vercel? 有在大马的朋友吗? 问个运营商问题 你们在有领导的公司大群发过的最大胆的消息是什么 公司裁员,目前没有工作。想试试摆摊,做一个移动鲜啤打酒车 我的硬盘 Memblaze Pblaze 5 Linux 下不识别,给 Linux 内核提交了补丁, AI 说有望被合并 只有我一个人觉得 codex 不好用?
从哪吒监控漏洞说起:我做了一个轻量级 VPS 入侵监控与告警工...
857 · 2026-06-17 · via V2EX

从哪吒监控漏洞说起:我做了一个轻量级 VPS 入侵监控与告警工具 vps-sentinel

最近两天,哪吒监控相关安全事件又在圈子里被讨论起来。公开安全公告里可以看到,Nezha Monitoring 近期有多条访问控制、SSRF 、跨租户权限和 Agent/面板信任边界相关漏洞被披露或更新。

这件事给我的启发很直接:
VPS 上只做“在线监控”是不够的,我们还需要知道机器有没有出现可疑登录、持久化、异常进程、异常监听端口和关键文件漂移。

所以我整理并开源了一个 Rust 写的轻量级 VPS 入侵信号监控工具:

GitHub: https://github.com/cryptoli/vps-sentinel
Release: v0.1.0

为什么需要这个工具

哪吒监控这类工具的核心价值是“服务器状态监控”:CPU 、内存、流量、延迟、在线状态等。
但一旦监控面板、Agent 权限或远程执行能力出现问题,风险就会变成:

  • 面板账号被拿下后,影响多台 Agent 机器;
  • 低权限用户越权触发任务或访问内部资源;
  • Agent 权限过高,导致攻击面扩大;
  • 机器被植入后门后,传统在线监控不一定能及时发现;
  • 服务器还在线、CPU 也正常,但 authorized_keys、systemd 、cron 、监听端口已经被改了。

vps-sentinel 不是哪吒监控的替代品,它关注的是另一个方向:

主机有没有出现“被入侵的信号”。

vps-sentinel 支持什么

1. SSH 登录监控

可以识别:

  • root SSH 登录;
  • 密码登录;
  • 普通成功登录;
  • SSH 爆破行为;
  • 基于来源 IP 的聚合告警;
  • journalctl / auth.log / secure 日志兼容读取。

默认不是只提醒陌生 IP ,而是可以按配置提醒成功登录。

2. SSH key 和关键文件完整性

重点监控:

  • authorized_keys
  • authorized_keys2
  • 关键系统配置文件
  • Web 目录中的疑似 WebShell 内容
  • 基线漂移

如果你手动改了 SSH key ,它会作为风险漂移被识别出来,而不是静默忽略。

3. 持久化检测

会检查常见持久化入口:

  • cron
  • systemd unit
  • shell profile
  • ld.so.preload
  • 可疑启动命令
  • 下载后执行
  • base64 解码后执行
  • 临时目录自启动
  • 网络到 shell 的执行链路

它不是简单字符串匹配,而是基于行为特征组合评分,降低正常运维误报。

4. 进程风险检测

支持识别:

  • 临时目录可执行文件;
  • deleted executable ;
  • memfd / 匿名执行;
  • 网络 shell 桥接;
  • 已知挖矿/扫描器身份;
  • 改名伪装进程;
  • 可疑父进程链;
  • systemd unit 与 ExecStart 上下文;
  • 可执行文件 owner 、大小、hash ;
  • cgroup/container 上下文;
  • 出站连接画像。

比如普通转发工具不会因为名字像“网络工具”就直接告警,程序会结合 shell 意图、fd 复制、TTY 、socket 、执行路径等多个信号判断。

5. 网络监听检测

会读取 /proc/net/tcp*/proc/net/udp* 并反查进程,重点关注:

  • 新增公网监听;
  • 高风险公网端口;
  • 监听 owner 相对基线变化;
  • 可疑进程监听常见端口;
  • 防火墙状态辅助判断。

80 、443 、22 这类常见端口不会被无脑信任,也不会被无脑告警。
如果黑客伪装成常见端口上的服务,仍然会结合进程身份、路径、owner 、systemd 、hash 、出站连接等上下文分析。

6. 通知渠道

目前支持:

  • Telegram
  • Email SMTP
  • Webhook
  • ntfy
  • Gotify
  • Bark
  • ServerChan

通知内容支持中英文,并且会带上 VPS 名称,适合多台服务器同时部署。

7. 低资源占用

程序使用 Rust 编写,本地 SQLite 存储。
我在测试 VPS 上通过 systemd 运行,常驻内存大约 5MB 左右,具体会随系统环境和扫描数据略有变化。

安装方式

一键安装:

curl -fsSL https://raw.githubusercontent.com/cryptoli/vps-sentinel/main/install.sh -o install.sh
sudo sh install.sh

安装时启用 Telegram:

sudo TELEGRAM_BOT_TOKEN="<your-bot-token>" \
  TELEGRAM_CHAT_ID="<your-chat-id>" \
  TELEGRAM_MIN_SEVERITY=Medium \
  VPS_NAME="prod-web-1" \
  sh install.sh

安装完成后会自动创建:

/usr/local/bin/vps-sentinel
/usr/local/bin/vs

也就是说以后可以直接用简写:

sudo vs doctor
sudo vs scan
sudo vs reload

常用命令

检查运行环境:

sudo vs doctor --config /etc/vps-sentinel/config.toml

校验配置:

sudo vs config validate --config /etc/vps-sentinel/config.toml

执行一次扫描但不发送通知:

sudo vs scan --no-notify --config /etc/vps-sentinel/config.toml

测试通知渠道:

sudo vs notify test --config /etc/vps-sentinel/config.toml

修改配置后重载:

sudo vs reload --config /etc/vps-sentinel/config.toml

更新程序:

curl -fsSL https://raw.githubusercontent.com/cryptoli/vps-sentinel/main/update.sh -o update.sh
sudo sh update.sh

停止服务:

sudo vps-sentinel-stop

和哪吒监控的关系

哪吒监控适合看服务器在线状态和资源指标。
vps-sentinel 更适合做入侵信号监控。

二者关注点不同:

类型 关注点
哪吒监控 在线状态、CPU 、内存、流量、延迟
vps-sentinel 登录、进程、端口、持久化、关键文件、WebShell 、通知告警

我的建议是:

  • 如果你需要状态面板,可以继续用成熟监控工具;
  • 如果你担心 VPS 被登录、被植入后门、被加 SSH key 、被改 systemd/cron ,可以加一层 vps-sentinel
  • 不建议把主机入侵监控当普通 Docker 容器运行,因为普通容器默认只能看到容器自己的进程和文件系统,不能可靠监控宿主机。

哪吒事件给我们的提醒

这次事件不应该简单理解成“某个项目不能用”。真正的问题是:

只要一个系统拥有跨机器管理能力、远程执行能力或高权限 Agent ,它本身就必须被当成高价值攻击面来看待。

所以除了更新存在漏洞的软件,我们还应该关注这些问题:

  • 有没有异常 SSH 登录?
  • 有没有新增 SSH key ?
  • 有没有新增 systemd/cron 持久化?
  • 有没有异常公网监听?
  • 有没有可疑进程伪装成正常服务?
  • 有没有 WebShell 痕迹?
  • 有没有被植入挖矿或扫描工具?
  • 告警消息能不能第一时间发到手机?

这正是 vps-sentinel 想解决的问题。

项目地址

GitHub:

https://github.com/cryptoli/vps-sentinel

欢迎测试、提 issue 、提 PR 。
这个项目会继续围绕“低资源占用、低误报、可解释告警、适合普通 VPS 用户”方向优化。