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. 打开飞牛的 DockerCompose
  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,该开的认证开着,简单又安全。

相关推荐
隔窗听雨眠1 小时前
原生一体化多模态大模型技术研究:从拼接到统一的架构革命
人工智能·架构
持敬chijing1 小时前
Web渗透之SQL注入总结
sql·安全·web安全·网络安全·网络攻击模型·web
羊羊小栈1 小时前
Uplift营销供应链协同决策系统(基于Uplift因果推断与运筹优化算法)
前端·人工智能·算法·毕业设计·大作业
苏州邦恩精密1 小时前
江苏三维扫描仪厂家如何选择合适的工业测量方案?
人工智能·科技·机器学习·3d·自动化·制造
humors2211 小时前
100种社会实践
人工智能·程序人生
保卫大狮兄1 小时前
什么是WBS项目管理?WBS有哪些核心功能?
大数据·人工智能
标书畅畅行1 小时前
钛投标:全流程企业级AI标书解决方案,重构投标数字化生产力
大数据·人工智能
叫我:松哥2 小时前
基于深度卷积神经网络的水果图片分类算法设计与实现,有ResNet50的迁移学习模型,准确率达95%
人工智能·python·神经网络·机器学习·分类·cnn·迁移学习
大囚长2 小时前
大模型API的上下文缓存(Contextual Cache)
人工智能·缓存