飞牛 NAS 部署 Hermes AI Agent + ZeroNews 内网穿透,实现远程可管理的 AI 助手

📅 2026/8/25 23:26:03
飞牛 NAS 部署 Hermes AI Agent + ZeroNews 内网穿透,实现远程可管理的 AI 助手
做技术这行久了总有个习惯能本地跑的服务绝不放到云上。AI Agent 也一样 —— 把 Hermes 部署在自家 NAS 上数据完全自主、调用成本可控还能 7×24 小时不间断地跑定时任务这套本地部署的玩法我折腾了挺长时间体验一直不错。但真正用起来才发现部署在内网 和 好用 之间还隔着一个远程访问的问题。最开始我图省事直接在路由器上把 6060 端口映射出去结果没两天就在日志里看到大量陌生 IP 的扫描请求吓得赶紧关了。后来换成 WireGuard 拨 VPN 回家安全是安全了但每次手机上想快速看一眼 Agent 状态都得先开 VPN 客户端、等连接、再开浏览器步骤繁琐不说网络不稳定的时候还经常断。SSH 动态端口转发也试过只适合电脑端临时用移动端基本没法操作。前前后后试了三四套方案要么安全不够要么体验太差要么维护成本太高。最后改用内网穿透 HTTPS 隧道的方式才真正解决问题在 NAS 上装个轻量客户端把 Hermes Web UI 映射成一个带 HTTPS 证书的公网域名手机电脑直接打开就能用不用开 VPN不用动路由器也不用自己折腾证书续期。这篇文章就是我把整套方案从零搭起来的完整记录。从 docker-compose 部署 Hermes Agent 和 Web UI到安装零讯ZeroNews客户端、配置自定义域名和 HTTPS 隧道再到最后的公网访问验证每一步都有截图和说明。如果你也在为 内网服务怎么安全便捷地远程访问 这个问题头疼希望这篇踩坑笔记能帮你少走点弯路。一、在飞牛上把 Hermes Agent Hermes-Web-UI 跑起来在飞牛上我们以 docker-compose 方式部署一键 Hermes Agent Hermes-Web-UI以docker-compose方式 部署的脚步内容可以直接复制以下docker-compose.yml 部署脚本内容services: hermes: image: ekkoye8888/hermes-web-ui:latest container_name: hermes-webui restart: unless-stopped ports: - 6060:6060 - 8651:8651 - 56121:56121 volumes: - ./hermes_data:/home/agent/.hermes - ./hermes_data/hermes-web-ui:/home/agent/.hermes-web-ui environment: PORT: 6060 HERMES_HOME: /home/agent/.hermes HERMES_BIN: /opt/hermes/.venv/bin/hermes HERMES_WEB_UI_XAI_CALLBACK_BIND_HOST: 0.0.0.0 HERMES_ALLOW_ROOT_GATEWAY: 1几个配置顺便解释一下./hermes_data 是相对路径跟着 yml 文件走不用写死绝对路径6060:6060浏览器访问 hermes-web-ui 的本地端口号部署 Hermes 容器打开飞牛的Docker→Compose点击新建项目新增项目输入项目名如 hermes点击路径新建一个文件夹如 hermes 文件夹,然后选择新增的 hermes 文件夹再确认来源选择 创建 docker-compose.yml, 将上面的 docker-compose.yml 内容直接粘贴进来并勾选创建项目后立即启动然后点击确认等 Hermes 镜像拉完看 hermes-agent 和 hermes-webui 是不是都绿的运行中先在局域网里试试浏览器打开http://飞牛内网IP:6060先用默认账号密码登录默认登录名admin默认密码123456 登录后记得修改密码第一次登录成功后默认是没有配置大模型的这时候发起对话会提示异常所以我们需要先配置大模型在模型配置页面点击 添加 Provider我选用的 DeepSeek 的 v4-flash 模型输入 API Key,点击添加大模型添加完成后再回到 对话 界面与 Hermes 对话一次这时候就能正常交流了Hermes-Web-UI 内网访问正常后接下来就安装 ZeroNews 完成 Hermes-Web-UI 映射配置二、安装ZeroNews客户端本地能访问了接下来装 ZeroNews准备把Hermes-Web-UI面板映射出去。复制Token先登录ZeroNews 控制台复制快速开始的AuthToken Token 是多设备共用一个飞牛中安装 ZeroNews 客户端打开飞牛的应用中搜索 zeronews 应用然后点击安装即可点击一下步直到安装完成ZeroNews 安装完成后点击打开会弹出 ZeroNews 的token 绑定界面粘贴在ZeroNews控制台的 Token ,然后点击 绑定即可绑定完成后客户端状态显示 在线同时在 ZeroNews 控制台的客户端界面可以查看刚上线的飞牛客户端三、给 Hermes Web UI 加个公网隧道先给Hermes Web UI分配一个好记忆的域名ZeroNews 控制台 →自定义域名→添加域名在子域名输入框中输入一个好记忆的名称如hermesweb 然后点击域名可用性检测会在下放显示出可以选择的域名然后选中一个就行最后点击提交完成域名添加然后给 Hermes-Web-UI 添加公网隧道进隧道管理页面→添加隧道隧道协议 默认HTTPS 就行带宽 4M带宽也可以分配多一些带宽公网域名 选择自定义域名再选择刚创建好的 hermesweb 域名绑定设备选择 fnos 客户端 内网端口输入 hermes-web-ui 的端口号 6060隧道添加完成后就可以通过公网访问了四、测一测确认没问题隧道添加完成后可以点击 域名后的小图标直接访问 Hermes-web-ui, 也可以复制域名到浏览器中打开登录Hermes-Web-UI 后我们做一些简单的测试如在对话中做下简单交互在模型页面可以查看/编辑当前用户的模型查看日志查看用量五、收尾把整个过程梳理下来最大的感受是远程访问这件事方案选对了其实比想象中简单。最开始走了不少弯路 —— 路由器端口映射不安全VPN 连接太繁琐SSH 转发不适合移动端每一种都有明显的短板。最终用内网穿透的方式落地后整个使用体验发生了质的变化出门在外打开浏览器就能直接管理 Hermes改模型配置、看运行日志、查任务状态和坐在家里局域网里操作几乎没有区别。这套方案的优势很实在不需要固定公网 IP家庭宽带就能用不需要在路由器上做任何配置对网络环境零要求HTTPS 证书由平台自动签发和续期不用自己维护 Nginx 和证书只暴露 Web UI 的 6060 端口不是把整台 NAS 扔到公网上安全边界清晰。当然Web UI 本身有账号密码但公网暴露场景下建议再叠加平台提供的访问控制策略 ——IP 白名单、地址围栏、BasicAuth根据自己的使用场景选配上进一步缩小可访问范围。如果你也有类似的需求 —— 不管是 AI Agent、管理面板还是其他跑在内网里的服务都可以参考这套 容器化部署 内网穿透 HTTPS 隧道 的思路用最小的运维成本解决跨网络访问的实际问题。