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

一、先说说,为啥要折腾这一套?

现在很多人喜欢把 AI Agent 跑在自己家的 NAS 或者内网服务器上------模型调用便宜、数据不出网、想怎么折腾就怎么折腾。挺香的。

但有个很现实的问题:Agent 在内网,你人却经常不在内网。 比如你在出差,突然想改一下模型配置;或者在地铁上,想用手机瞄一眼 Agent 有没有在好好干活;又或者同事要帮你排查 Gateway 挂了没------这时候你就会发现,光靠内网 IP 是真不方便。

常规做法无非是 VPN 拨回家、SSH 端口转发、路由器开端口......每种都要折腾一圈,有的还不安全。

那有没有一种及简单/又安全同时又能随时随地访问家里的 Agent 的方式? ZeroNews 就能很好的解决这个问题,简单说,它就是一个内网穿透平台 。你在 NAS 或内网机器上装一个 ZeroNews 客户端(Agent),就能把 Hermes Agent 的web UI 快速映射成一个带 HTTPS 证书的公网域名------外面的人用浏览器打开这个域名,流量会安全地转回你内网的服务。

本文以 飞牛NAS 设备为列,讲述如何在飞牛NAS上已容器方式安装运行 Hermes Agent + Hermes Web UI + ZeroNews, 帮你搭建远程可管理的 Hermes AI Agent

二、Hermes Agent 和 Hermes Web UI,到底是啥?

Hermes Agent 是什么

Hermes Agent(大家常说的「爱马仕」)是 Nous Research 开源的 AI Agent 框架。别把它当普通聊天机器人------它能长期运行在后台,自己调工具、记住上下文,读文件、跑命令、搜网页、发消息、按时间表自动执行任务 都能干。

它支持 Telegram、Discord、Slack 等 20+ 消息平台接入,内置文件操作、Shell、浏览器等工具,还有记忆和技能系统让 Agent 越用越懂你。模型方面对接 OpenRouter、Anthropic、OpenAI 等主流 Provider,也支持 MCP 扩展和子 Agent 并行处理复杂任务。

但它本质上是个后台程序,得靠 CLI 交互,运行状态和日志也不直观。这时候就需要 Hermes Web UI 了------把配置、监控搬到浏览器里,随时改模型 API Key,不用天天 SSH 进容器。

Hermes Web UI 是什么

Hermes Web UI 是社区维护的 Web 管理面板,镜像 ekkoye8888/hermes-web-ui,浏览器默认通过 http://<NAS IP>:6060 即可访问。

它主要帮你做这几件事:

  • 在网页里跟 Agent 对话、调试模型和工具;
  • 查看和恢复历史会话;配置 API Key、切换模型和 Profile;
  • 监控 Gateway 及 Telegram/Discord 等渠道是否在线;
  • 管理定时任务、Skills 和 Memory;查看 Token 用量;配置消息渠道接入。

它也是远程管理的入口------Web UI ,默认开在 6060 端口,后面用 ZeroNews 映射出去,出门在外用浏览器或 Hermes Desktop 都能连

三、加上 ZeroNews,能多干点啥?

Hermes Web UI 默认只能通过内网 IP 访问------人在家没问题,一出门就够不着了。

ZeroNews 解决的就是这个:让你在外面也能安全连回 家里的 Hermes Web UI

ZeroNews 是一个内网穿透平台,它可以把 Hermes-Web-UI 映射成一个公网可访问的 HTTPS 域名地址,比如 https://hermes-nas.xxx.takin.cc。之后不管你在公司、地铁还是酒店,打开这个链接就能管理家里的 Agent,不用 VPN,也不用路由器开端口,简单/安全又省事。

它具体能帮你做这些事:

  • 没公网 IP 也能用 --- 家庭宽带、公司内网都行,ZeroNews 客户端主动连出去,不依赖固定 IP
  • 自动 HTTPS --- 证书平台签发和续期,不用在 NAS 上配 Nginx 或 Let's Encrypt
  • 精准映射 --- 只暴露 Web UI 的 6060 端口,不是把整个 NAS 扔到公网上
  • 多端访问 --- 手机浏览器、笔记本、Hermes Desktop 都能通过这个域名连进来
  • 零改造 --- Hermes 容器配置不用动,加个 ZeroNews 客户端、控制台点几下映射就完事

接下来我们开始部署

四 、 在飞牛上把 Hermes Agent + Hermes-Web-UI 跑起来

在飞牛上我们以 docker-compose 方式部署一键 Hermes Agent + Hermes-Web-UI

以 docker-compose 方式 部署的脚步内容

可以直接复制以下 docker-compose.yml 部署脚本内容

复制代码
services:
  hermes-agent:
    image: nousresearch/hermes-agent:latest
    container_name: hermes-agent
    restart: unless-stopped
    volumes:
      - ./hermes_data:/opt/data
    environment:
      HERMES_UID: "1000"
      HERMES_GID: "1000"
    command: ["gateway", "run"]

  hermes-webui:
    image: ekkoye8888/hermes-web-ui:latest
    container_name: hermes-webui
    restart: unless-stopped
    depends_on:
      - hermes-agent
    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_MANAGED_GATEWAY: "0"
      HERMES_WEB_UI_XAI_CALLBACK_BIND_HOST: 0.0.0.0
      HERMES_ALLOW_ROOT_GATEWAY: "1"
      PATH: /opt/hermes/.venv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
    stdin_open: true
    tty: true

几个配置顺便解释一下:

  • ./hermes_data 是相对路径,跟着 yml 文件走,不用写死绝对路径
  • 6060:6060,浏览器访问 hermes-web-ui 的本地端口号

部署 Hermes 容器

  1. 打开飞牛的 Docker → Compose
  1. 点击新建项目 新增项目

输入项目名,如 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 添加公网隧道

  1. 进 隧道管理 页面 → 添加 隧道
  • 隧道协议, 默认HTTPS 就行
  • 带宽, 4M带宽,也可以分配多一些带宽
  • 公网域名, 选择自定义域名,再选择刚创建好的 hermesweb 域名
  • 绑定设备选择 fnos 客户端, 内网端口输入 hermes-web-ui 的端口号 6060

隧道添加完成后,就可以通过公网访问了

七 、测一测,确认没问题

隧道添加完成后,可以点击 域名后的小图标,直接访问 Hermes-web-ui, 也可以复制域名到浏览器中打开

登录Hermes-Web-UI 后,我们做一些简单的测试

如在对话中,做下简单交互

在模型页面可以查看/编辑当前用户的模型

查看日志

查看用量

八 、收尾

  • Hermes Agent 在飞牛上 7×24 跑 Gateway,真正执行任务;
  • Hermes Web UI 提供浏览器管理面板,配置、监控、调试都在网页里搞定;
  • ZeroNews 把 Hermes Web UI 映射成 HTTPS 地址,让你在外面随时随地都能远程访问。

按这篇教程走下来,你得到的不是一个「暴露到公网的 NAS」,而是一个随时能连上的 Agent 管理入口,模型和会话数据还在本地,传输走 HTTPS,该开的认证开着,简单又安全。

相关推荐
禹凕5 小时前
深度学习之激活函数(Deep Learning about Activation function)
人工智能·深度学习
loulanyue_5 小时前
脑机接口:意动·芯动·行动——读同济医院副院长廖家智2026云栖演讲
人工智能·深度学习·云栖大会
Dachui_11225 小时前
内网穿透如何限制访问地区?ZeroNews Geo Location 区域访问控制实践
运维·网络安全·内网穿透·访问控制·远程办公·api安全·ip白名单
Omics Pro5 小时前
全新可重分析!代谢组质谱专用
数据库·人工智能·算法·机器学习·自然语言处理
一只废狗狗狗狗狗狗狗狗狗6 小时前
Network架构1——卷积神经网络CNN
人工智能·算法·cnn
鲲穹AI种草6 小时前
桌面与手机美化怎么做,多款 AI 壁纸生成工具使用记录
人工智能·壁纸工具
忆~遂愿6 小时前
免密连接+快捷键+虚拟鼠标:ToDesk远程操作AI效率拉满
人工智能·python·深度学习·神经网络·自然语言处理·计算机外设·安全架构
敲代码的乔帮主6 小时前
MokioMind 各训练阶段数据样本对比
人工智能·深度学习·机器学习
HackTwoHub6 小时前
DeepSeek Harness 红队破甲插件|适配 SRC 挖掘场景,区分平台拦截与模型原生输出,用于大模型安全边界合规测评研究
安全·web安全·网络安全·系统安全·密码学·网络攻击模型·安全架构
梦帮科技6 小时前
【3.0】上线与运维:节点监控、水龙头、区块浏览器与安全清单
运维·安全·web安全·金融·区块链·密码学·安全架构