使用lets Encrypt可以创建免费证书,3个月,可自动续期。
安装:
curl https://get.acme.sh | sh -s email=my@example.com
生成证书
使用Dns api自动添加域名验证信息
export DP_Id="1234"
export DP_Key="sADDsdasdgdsf"
acme.sh --issue --dns dns_dp -d aa.com -d www.aa.com
以后就可以
acme.sh --issue -d mydomain2.com --dns dns_dp
复制证书
acme.sh --install-cert -d example.com \
--key-file /path/to/keyfile/in/nginx/key.pem \
--fullchain-file /path/to/fullchain/nginx/cert.pem \
--reloadcmd "service nginx force-reload"
Nginx 的配置 ssl_certificate 使用 /etc/nginx/ssl/fullchain.cer ,而非 /etc/nginx/ssl/<domain>.cer ,否则 SSL Labs 的测试会报 Chain issues Incomplete 错误。
定时任务
crontab -l
56 * * * * "/root/.acme.sh"/acme.sh --cron --home "/root/.acme.sh" > /dev/null
群晖可使用webhook导入证书
需要使用帐号密码
./acme.sh --deploy --home . -d "abc.com" --deploy-hook synology_dsm
参考https://github.com/acmesh-official/acme.sh/wiki/Synology-NAS-Guide
https://github.com/acmesh-official/acme.sh/wiki/%E8%AF%B4%E6%98%8E