使用 Tailscale 配置 HTTPS
从您的私有网络中的任何地方安全地访问 Open WebUI。无需开放端口,无需配置证书,无需对公网暴露。
Tailscale 在您的设备之间创建加密的网状 VPN(称为“tailnet”)。每台设备都会获得一个稳定的主机名,例如 my-server.tail1234.ts.net,并且 Tailscale 可以自动为其预配受信任的 HTTPS 证书。您的 Open WebUI 实例将保持完全私密,仅允许 tailnet 上的设备进行访问。
如果您希望跨设备进行私有、身份验证的访问,而不将 Open WebUI 暴露给公共互联网,Tailscale 是理想的选择。这非常适合个人搭建、小型团队,或者随时随地通过手机或笔记本电脑访问家里的服务器。
本页专门介绍 HTTPS 设置。有关包含 SSO 身份验证、Docker Compose 边车 (sidecar) 设置等在内的完整 Tailscale 集成方案,请参阅 Tailscale 集成教程。
前提条件
| 要求 | 细节 |
|---|---|
| Open WebUI | 本地运行于端口 8080(默认) |
| Tailscale 账号 | 个人使用免费,注册于 tailscale.com |
| 安装 Tailscale | 运行 Open WebUI 的服务器和任何客户端设备上均已安装 |
1. 安装 Tailscale
- macOS
- Linux
- Windows
从 Mac App Store 下载,或者运行:
brew install tailscalecurl -fsSL https://tailscale.com/install.sh | sh从 tailscale.com/download 下载。
2. 连接服务器
在运行 Open WebUI 的机器上执行:
sudo tailscale up您的机器将获得一个 tailnet 主机名,类似于 my-server.tail1234.ts.net。您可以通过以下命令查看:
tailscale status3. 访问 Open WebUI
在同一 tailnet 下的任何设备上打开:
http://my-server.tail1234.ts.net:8080此连接已经由 WireGuard 进行了端到端加密。对于需要 HTTPS 的浏览器功能(例如语音通话),请继续执行下一步骤。
使用 Tailscale 证书启用 HTTPS
Tailscale 可以为您的 tailnet 主机名自动预配受信任的 Let's Encrypt 证书。
1. 在管理控制台中启用 HTTPS
前往 Tailscale Admin → DNS 并启用 HTTPS Certificates。
2. 生成证书
sudo tailscale cert my-server.tail1234.ts.net这将在当前目录下创建两个文件:
my-server.tail1234.ts.net.crt(证书)my-server.tail1234.ts.net.key(私钥)
3. 通过 HTTPS 提供 Open WebUI 服务
使用 tailscale serve 将 HTTPS 流量直接代理至 Open WebUI,无需任何额外的反向代理:
sudo tailscale serve https / http://localhost:8080现在可以通过以下地址访问 Open WebUI:
https://my-server.tail1234.ts.net无需指定端口号。Tailscale 会处理 TLS 终止并透传到本地的 Open WebUI。
配置 Open WebUI
设置 WEBUI_URL 以确保 OAuth 回调和内 部链接可以正确解析:
docker run -d \
-p 8080:8080 \
-e WEBUI_URL=https://my-server.tail1234.ts.net \
-v open-webui:/app/backend/data \
--name open-webui \
ghcr.io/open-webui/open-webui:mainTailscale Funnel(可选的公共访问)
如果您想公开分享 Open WebUI(且客户端 无需安装 Tailscale),Tailscale Funnel 可以将您的 tailscale serve 端点暴露给互联网:
sudo tailscale funnel https / http://localhost:8080您的 Open WebUI 现已可通过带有有效 TLS 证书的 https://my-server.tail1234.ts.net 进行公开访问。Funnel 会通过 Tailscale 的基础设施路由流量,类似于 Cloudflare Tunnel。
Funnel 会允许互联网上的任何人访问您的 Open WebUI。在启用它之前,请务必确保在 Open WebUI 中配置了身份验证。
快速参考
| 操作/内容 | 命令 / 数值 |
|---|---|
| 连接至 tailnet | sudo tailscale up |
| 检查主机名 | tailscale status |
| 通过 HTTPS 提供服务 | sudo tailscale serve https / http://localhost:8080 |
| 公共访问 (Funnel) | sudo tailscale funnel https / http://localhost:8080 |
| 手动生成证书 | sudo tailscale cert my-server.tail1234.ts.net |
| 管理控制台 | login.tailscale.com/admin |
| 设置 CORS 源 | CORS_ALLOW_ORIGIN=https://my-server.tail1234.ts.net |