减少公网端口并不意味着把所有页面放在同一个权限面。xypass 的生产入口统一监听 3033,外部反向代理保留原始 Host,应用再按域名区分产品站、用户 Console 和部署 Admin。

三个域名的职责

  • 产品域提供公开官网、定价和 Blog。
  • Console 域承载账户登录、保险库和组织管理。
  • Admin 域承载部署初始化、认证配置、存储和备份管理。

三者可以进入同一个 Gateway,但不应互相暴露不属于自己的页面和 API。例如 Admin 域不提供保险库接口,产品域也不直接开放部署管理入口。

内部服务不直接暴露

Web、Sync API、PostgreSQL 和 Backup Controller 通过 Compose 内部网络通信。宿主机或面板反向代理只需要访问 Gateway。这样可以把 TLS 终止交给现有基础设施,同时避免数据库和内部控制面出现在公网监听列表中。

Host 必须被保留

反向代理如果覆盖 Host,应用将无法判断请求属于哪个表面。配置 Nginx、Caddy 或面板时,应转发原始 Host、协议和客户端地址。健康检查还要分别覆盖三个域名,而不只是访问一个 IP 和端口。

共享端口是部署简化,Host 隔离才是安全边界;这两件事需要同时成立。