安装acme.sh
curl https://get.acme.sh | sh
如果此方式安装失败,可以使用 git 安装
安装过程中会自动为你创建 crontab 定时任务, 每天 0:15 自动检测所有的证书, 如果快过期了, 需要更新, 则会自动更新证书crontab -l
创建 一个 bash 的 alias, 方便使用: alias acme.sh=~/.acme.sh/acme.sh
生成证书
单域名:
可以设置多个域名:
只需要指定域名,并指定域名所在的网站根目录。acme.sh 会全自动的生成验证文件,并放到网站的根目录,然后自动完成验证, 最后又自动删除验证文件。
安装证书
生成证书后,将证书安装到Nginx。
默认生成的证书都放在安装目录下: ~/.acme.sh/
,这个目录一般来说不能让nginx直接使用,所以我们需要将证书放到一个指定的目录:/usr/local/nginx/ssl
请注意:reloadcmd非常重要。该证书可以自动更新,但是如果没有正确的”reloadcmd”,该证书可能无法刷新到您的服务器,那么您的网站将无法在60天内显示更新的证书。
配置Nginx
配置完后验证 nginx 配置有没有错误:
nginx -t
没有错误重启 nginx :service nginx restart
手动更新证书:acme.sh --cron -f
目前由于 acme 协议和 letsencrypt CA 都在频繁的更新, 因此 acme.sh 也经常更新以保持同步.所以为了省心省力,最好还是设置一下软件的自动更新:acme.sh --upgrade --auto-upgrade