如何在群晖Synology上安装 Let’s Encrypt 证书并设置自动更新?

上一篇说了如何设置群晖DDNS,这一篇接着说群晖上如何安装使用SSL证书,并实现自动更新的问题。

此方法来自@oXnMe

注意:操作前建议先根据上一篇“群晖 Synology 一键配置Cloudflare DDNS 脚本”中的方法配置脚本!

通过 SSH 访问 NAS

  1. 登录到你的 DSM
  2. 转到 控制面板 > 终端机和 SNMP > 启动 SSH 服务
  3. 使用你的客户端通过 SSH 访问 NAS。
  4. 使用你的 NAS 管理员帐户进行连接。
  • 注意:SSH下建议使用root权限执行操作,使用管理员账号密码连接SSH后,输入sudo -i切换到root用户。

证书注册&签发

  1. 注册Let’s Encrypt 证书
docker run --rm -v "/volume1/docker/acme":/acme.sh --net=host neilpang/acme.sh --register-account -m 你的邮箱 --server letsencrypt
  • 注意:运行上述命令前,/volume1/docker/acme这个目录得先建好。
  1. 签发证书
docker run --rm -v "/volume1/docker/acme":/acme.sh -e CF_Token="你的CF Token" --net=host neilpang/acme.sh --issue --dns dns_cf --ocsp --server letsencrypt -d "NAS需要绑定的域名"
  • 注意:如果提示IP i/o timeout,则需要科学上网或者把production.cloudflare.docker.com加入到魔法规则里面。

*跑完上面的命令后看看/volume1/docker/acme/目录下有没有你域名的证书,如果有则表示可以继续执行下一步了。

给群晖添加证书

docker run --rm -v "/volume1/docker/acme":/acme.sh -e SYNO_Username="登录NAS用户名" -e SYNO_Password="登录密码" -e SYNO_Scheme="https" -e SYNO_Port="NAS端口" -e SYNO_Certificate="证书描述" --net=host neilpang/acme.sh --deploy --insecure --deploy-hook synology_dsm -d "你的域名"
  • 注意:执行完命令后转到DSM 控制面板 > 安全性 > 证书下,查看是否有新增成功。

添加定时任务

  1. 登录到你的 DSM
  2. 转到 控制面板 > 任务计划
  3. 新增 > 计划的任务 > 用户定义的脚本(操作界面如下)
  1. 用户定义的脚本按照以下格式填入并确定
docker run --rm -v "/volume1/docker/acme":/acme.sh -e CF_Token="你的CF Token" --net=host neilpang/acme.sh --renew --force --dns dns_cf --ocsp --server letsencrypt -d "你的域名"

docker run --rm -v "/volume1/docker/acme":/acme.sh -e SYNO_Username="登录NAS用户名" -e SYNO_Password="登录密码" -e SYNO_Scheme="https" -e SYNO_Port="NAS端口" -e SYNO_Certificate="证书描述" --net=host neilpang/acme.sh --deploy --insecure --deploy-hook synology_dsm -d "你的域名"

自此,所有操作完成!

评论

  1. 56
    Windows Chrome
    1 年前
    2023-9-27 9:56:06

    现在使用这个方法 默认拉取最新的acme镜像,但是此镜像有bug,https://github.com/acmesh-official/acme.sh/issues/2727,有没有办法用这个命令拉取3.0.6

    • 博主
      56
      Windows Chrome
      1 年前
      2023-10-12 12:20:56

      加上对应的tag就行了,比如:–net=host neilpang/acme.sh:3.0.6

  2. ron
    Windows Chrome
    9 月前
    2024-3-11 17:00:50

    “”证书描述”,这里不知道要填啥。

    • 博主
      ron
      Windows Chrome
      8 月前
      2024-3-13 19:24:11

      随意,可以填你的域名

  3. bai
    Windows Chrome
    已编辑
    6 月前
    2024-6-03 12:50:33

    非常有用,这里要注意,最后的证书描述其实就是证书名称,需要在后端有对应的名称的自签证书或者其他证书,否则安装不上。
    如果有多个域名的话,后面直接加多个-d “你的域名” 也是支持的
    顺便问下博主,如果我docker和宿主机不在同一个host的话,如何自定义内网IP部署?

  4. 士大夫
    Windows Edge
    4 月前
    2024-7-10 9:27:47

    请问CF_Token是什么?怎么获取?

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇