DSM 5.2 自動更新 letsencrypt 憑證

首先把 synology 的 sshd 服務打開,在 Control Panel -> File Services -> SFTP -> Enable SFTP service

然後在某台主機啟 web 服務,設定好 letsencrypt 自動更新。編輯 /etc/crontab 加入下列指令

0 0,12 * * * root python -c ‘import random; import time; time.sleep(random.random() * 3600)’ && certbot renew

然後,產生 ssh passwordless keys ,自己 google 前面的關鍵字一下。

再來建立下列檔案,把 下列主機名稱改成你自己的名稱:

#!/bin/bash

scp /etc/letsencrypt/live/xxx.liho.tw/privkey.pem xxx:/usr/syno/etc/ssl/ssl.key/server.key
scp /etc/letsencrypt/live/xxx.liho.tw/cert.pem xxx:/usr/syno/etc/ssl/ssl.crt/server.crt
scp /etc/letsencrypt/live/xxx.liho.tw/chain.pem xxx:/usr/syno/etc/ssl/ssl.intercrt/server-ca.crt
ssh xxx “/usr/syno/sbin/synoservicectl –restart httpd-sys”

然後把這個 script 也寫到 /etc/crontab 讓他每天自己自動覆蓋 synology 設備的憑證,並重啟網頁服務。