bg-tutorials

如何在 Synology NAS 上安装 ACME SSL 证书

在本指南中,您将学习如何使用ACME + EAB 凭证在 Synology NAS 上安装ACME SSL证书,然后将其导入 Synology。安装完成后,您的 NAS 将运行一个完全在 DSM(磁盘站管理器)之外自动处理的证书。

Synology Nas ACME SSL

Synology DSM 允许直接通过图形用户界面导入 SSL 证书,但对于商业 ACME 证书(来自SectigoDigiCert 等提供商),最好的方法是使用acme.sh从外部管理,然后再导入。


开始之前

确保具备以下条件

  • 指向 Synology 公共 IP 的域名
  • DSM 7.x(为获得最佳兼容性,建议使用 7.2)支持通过图形用户界面导入全部证书”。
  • 外部 Linux 主机、VPS 或本地服务器,您可以在其中安装 acme.sh
  • 访问证书提供商的ACME URLEAB 证书(KID + HMAC)

第 1 步:安装 acme.sh

首先,您需要 ACME 客户端来处理与 CA 的通信。

在外部主机(Linux、BSD 或 VPS)上运行这些命令:

curl https://get.acme.sh | sh
source ~/.bashrc
acme.sh --version

你应该看到屏幕上打印的版本。这意味着安装成功。


步骤 2:在 CA 注册 ACME 帐户

您的商业供应商(如 Sectigo 或 DigiCert)会为您提供两个凭证:一个EAB 密钥 ID和一个HMAC 密钥。这些凭证将授权您的 ACME 客户端。

获得它们后,在同一主机上运行此命令:

acme.sh --register-account \
  --server https://acme.yourca.com/v2/acme \
  --eab-kid YOUR_EAB_KID \
  --eab-hmac-key YOUR_EAB_HMAC_KEY \
  --accountemail [email protected]

用您的实际凭据替换占位符。


第 3 步:通过 DNS 验证签发证书

现在使用 DNS 验证签发证书–这是 NAT 后面 NAS 设备最安全可靠的选择。

示例(手动 DNS 条目):

acme.sh --issue \
  -d yourdomain.com \
  --dns dns_manual \
  --server https://acme.sectigo.com/v2/OV

系统会提示您创建 DNS 记录:

_acme-challenge.yourdomain.com  TXT  (token value)

传播后(使用dig TXT _acme-challenge.yourdomain.com +short 进行检查),重新运行命令完成验证。

您的证书文件将保存在~/.acme.sh/yourdomain.com/ 下。

在该文件夹中,您可以找到

  • fullchain.cer– 证书 + 中间链
  • yourdomain.com.key– 私有密钥
  • ca.cer– 根节点/中间节点(如单独提供)

步骤 4:将证书导入 Synology

  1. 登录 DSM> 控制面板> 安全> 证书
  2. 单击添加> 导入证书
  3. 上传您的私人密钥和证书(fullchain.cer)

导入后,转到 “设置”,将证书分配给:

  • DSM 网络界面
  • 文件站/网络站
  • 反向代理
  • WebDAV / 驱动器
  • SSL VPN(如使用)

现在,您的 NAS 将使用上传的 SSL 证书。


步骤 5:自动续订并同步到 DSM

如果您希望 Synology NAS 始终更新最新的证书,而无需登录 DSM 或手动上传文件,可以使用acme.sh内置的synology_dsm 部署钩子。这样,acme.sh 就可以通过 HTTPS 直接将更新的证书推送到 DSM。

下面是设置方法。

1.配置 DSM 凭据(一次性设置)

从外部主机(安装acme.sh 的地方)运行

export SYNO_Username="admin"
export SYNO_Password="YourAdminPassword"
export SYNO_Hostname="nas.local"
export SYNO_Port="5001"

用您的凭据替换占位符。这些值保存在您的 shell 会话中,acme.sh 使用它们进行安全连接。

2.将证书部署到 DSM

签发或更新证书后,使用

acme.sh --deploy \
  -d yourdomain.com \
  --deploy-hook synology_dsm

该命令将

  • 通过 HTTPS(端口 5001)连接 NAS
  • 上传私钥和证书文件
  • 替换 DSM 控制面板中的当前证书
  • 重启所有必要的服务(图形用户界面、文件站、WebDAV 等)

您可以在DSM> 控制面板> 安全> 证书中验证更改。

3.让 acme.sh 处理一切(自动更新 + 自动部署)

好消息:acme.sh 已经安装了每天运行的 cron 作业。如果您的证书即将过期,它就会运行:

  • 自动更新证书
  • 再次触发synology_dsm 部署钩子
  • 将新证书上传到 DSM
  • 静默重启 DSM 服务

一旦设置完成,一切都会自动运行。无需与图形用户界面交互。


常见问题

下面我们将介绍用户在安装后最常问到的问题:

我能否在 NAS 上安装并运行 acme.sh?

技术上可以(通过 SSH 或 Docker),但 DSM 更新可能会破坏依赖关系。从外部主机管理 ACME 更为安全。

Synology 會自動更新外部憑證嗎?

不,DSM 不会自动提取更新。请使用部署钩子或计划脚本在每次更新后推送更新。

可以使用通配符证书吗?

是的,-d *.yourdomain.com 使用 DNS 验证的问题。在您的配置文件中启用 ACME 后,Sectigo 和 DigiCert 都支持通配符。


最后的话

该设置将现代商业 ACME SSL 自动化与 Synology 生态系统连接起来。您只需编写一些脚本,就能获得可信证书、全链控制和外部更新等优势。一旦完成一次,您就可以轻松复制到其他 NAS 设备、子域或客户端。

立即订购 SSL 证书, 可节省 10% 的费用!

快速发行, 强大加密, 99.99% 的浏览器信任度, 专业支持和 25 天退款保证. 优惠券代码 SAVE10

龙飞行的详细图像
撰写人

经验丰富的内容撰稿人, 擅长 SSL 证书. 将复杂的网络安全主题转化为清晰, 引人入胜的内容. 通过有影响力的叙述, 为提高数字安全作出贡献.