前言
使用 Zotero 管理文献时,绿联自带的 WebDAV 服务仅支持局域网 HTTP 传输,无法满足公网同步需求。为了突破限制,我们需要自行搭建一套支持 HTTPS 的内网穿透方案。
核心思路
整体流程分为四步:购买并解析域名、配置 DDNS 自动更新 IP、申请 SSL 证书、通过 FRP 实现内网穿透。
- 域名:作为固定访问入口。
- DDNS:动态 IP 环境下自动绑定域名。
- SSL 证书:确保 HTTPS 加密传输。
- FRP:将公网流量转发至 NAS 内部服务。
实施步骤
1. 域名与 DNS 解析
在任意云服务商处注册一个域名。登录控制台添加一条 A 记录,指向绿联 NAS 的局域网 IP 地址。这一步是为了让域名能初步定位到设备。
2. 配置 DDNS 服务
由于家庭宽带通常是动态 IP,需要部署 DDNS 工具(如 ddns-go)。
- 在 NAS 的 Docker 中拉取 ddns-go 容器。
- 获取云服务商提供的 API Token,填入 DDNS 配置界面。
- 选择对应的服务商类型,输入域名,设置为'通过接口获取 IP'。
- 检查日志,确认解析成功。如果遇到权限不足报错,需在云账号子用户策略中添加 FullAccess 权限。
3. 申请 SSL 证书
使用 Let's Encrypt 或其他免费证书颁发机构申请证书。
- 提交域名验证,通常需要添加一条 CNAME 记录到 DNS 控制台。
- 验证通过后下载证书文件(包含 .crt 和 .key)。
- 建议勾选泛域名证书以覆盖子域名需求。
4. 搭建内网穿透
推荐使用 Sakura Frp 进行穿透。
- 在 Docker 中添加 Frp 客户端容器。
- 登录 Frp 服务端后台创建隧道,配置本地端口(即 WebDAV 端口)。
- 启动隧道后,查看日志获取远程访问链接。
- 回到 DNS 控制台,将域名解析为 Frp 提供的 CNAME 地址。注意此时访问需携带端口号。
5. 启用 HTTPS
Frp 默认生成的自签名证书可能不被信任,建议替换为第 3 步下载的正式证书。
- 找到 Frp 容器的证书挂载目录。
- 将下载的证书文件重命名并覆盖原有文件。
- 重启容器,再次访问测试链接,浏览器应显示安全连接。
6. 配置 Zotero 同步
最后一步是应用成果。
- 在 Zotero 偏好设置中打开同步选项。
- 服务器地址填写 Frp 生成的 HTTPS 链接(含端口)。
- 账户信息输入绿联 NAS 的用户名和密码。
- 确保 NAS 上
/home/zotero/目录存在且权限正确。 - 点击验证服务器,确认同步正常。
补充说明
如果希望直接使用自定义域名访问绿联云服务本身,还需在 NAS 控制面板的安全设置中上传域名证书,并在 Web 服务配置中指定该证书。但需注意,部分功能切换证书后可能会影响纯 IP 访问的 HTTPS 状态,请根据实际场景权衡。
折腾网络配置难免遇到波折,但只要理清链路,最终都能跑通。希望这份记录能帮到同样有需求的同行。


