使用 acme.sh 部署 Let’s Encrypt 泛域名通用证书
Let’s Encrypt两种域名验证方式
1. DNS验证:配置一个随机的 TXT 记录来验证
2. 文件验证:配置一个随机的 URL 地址来验证
泛域名通用证书只能使用DNS TXT记录验证,acme.sh支持多种dnsapi我使用的是阿里云DNS,可以根据你的域名服务商进行选择支持列表。
安装 acme.sh
curl https://get.acme.sh | sh -s email=my@example.com
my@example.com 改为你自己的邮箱地址用于接收通知。
acme.sh自动为你创建定时任务, 每天 0:00 点自动检测所有的证书, 如果快过期了, 需要更新, 则会自动更新证书。
配置阿里云AK
设置临时系统变量
#你的阿里云AccessKeyId export Ali_Key="AccessKeyId" #你的AccessKeySecret export Ali_Secret="AccessKeySecret"
颁发证书
可以进行单域名、多域名、泛域名进行颁发。
acme.sh --issue --dns dns_ali -d chunblog.com -d *.chunblog.com
这里会使用dnsapi自动添加TXT记录,进行域名的 DNS 验证,中间会等待 2分钟左右来验证正确性,验证完成后记录会自动删除。
出现Cert success表示成功 后面会有证书存放路径。
复制/安装证书
Nginx
acme.sh --dns dns_ali -d chunblog.com -d *.chunblog.com --install-cert --key-file /www/cert/chunblog.com/key.pem --fullchain-file /www/cert/chunblog.com/cert.pem --reloadcmd "/etc/init.d/nginx reload"
参数说明
–install-cert 将颁发的证书安装到 apache/nginx 或任何其他服务器。
–key-file 发行/续订后将密钥文件复制到的路径。
–fullchain-file 发布/续订后将全链证书文件复制到的路径。
–reloadcmd 发布/更新后重新加载服务器后要执行的命令
然后修改Nginx配置文件使用 /www/cert/chunblog.com/key.pem、/www/cert/chunblog.com/cert.pem即可
server { listen 80; listen 443 ssl http2; server_name chunblog.com www.chunblog.com; index index.php index.html index.htm; root /www/chunblog.com; ssl_certificate /www/server/panel/vhost/cert/chunblog.com/fullchain.pem; ssl_certificate_key /www/server/panel/vhost/cert/chunblog.com/privkey.pem; ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3; ssl_ciphers EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5; ssl_prefer_server_ciphers on; ssl_session_cache shared:SSL:10m; ssl_session_timeout 10m; #禁止访问的文件或目录 location ~ ^/(.user.ini|.htaccess|.git|.svn|.project|LICENSE|README.md) { return 404; } location ~ .*.(gif|jpg|jpeg|png|bmp|swf)$ { expires 30d; error_log /dev/null; access_log /dev/null; } location ~ .*.(js|css)?$ { expires 12h; error_log /dev/null; access_log /dev/null; } access_log /www/wwwlogs/chunblog.com.log; error_log /www/wwwlogs/chunblog.com.error.log; }
安装acme.sh时已自动创建定时任务,证书到期前会自动更新证书并重载Nginx配置使证书生效。
© 版权声明
转载请注明来自白芸资源网以及原文地址。
本站不敢保证内容的可靠性,内容仅供小范围学习与参考,禁止用于商业、盈利或其它非法用途以及大范围传播,您需在学习与参考完毕后从您的个人存储空间彻底删除,因您滥用而造成的损失本站不承担法律责任。
本站部分内容可能源于互联网,版权争议与本站无关,如有侵权可联系站长处理,敬请谅解!
请您合法使用本站资源。
THE END