温馨提示:
本文最后更新于 2024-8-1,已超过半年没有更新,若内容或图片失效,请留言反馈。
本文将介绍使用 acme.sh 配置自动续签的 SSL 证书
安装 acme.sh
acme.sh 是一个集成了 ACME 客户端协议的 Bash 脚本,作者是 @neilpangxa,按照官方文档说明,我们直接在 Linux 下安装。
curl https://get.acme.sh | sh -s email=username@example.com
安装成功后
切换 Let's Encrypt
acme.sh --set-default-ca --server letsencrypt
使用使用 HTTP 验证签发证书方法
首先我们要做一下准备工作,假设你域名是 example.com,解析到你的服务器让其生效后,我们建立一个目录:
mkdir -p /var/www/letsencrypt
如果您用的 Nginx,那么新建一个配置文件:
server {
listen 80;
listen [::]:80;
server_name example.com;
location /.well-known/acme-challenge {
root /var/www/letsencrypt;
}
location / {
rewrite ^/(.*)$ https://$host/$1 permanent;
}
}
如果您使用的 Apache,那么新建一个配置文件:
<VirtualHost *:80> ServerName example.com DocumentRoot /var/www/letsencrypt RewriteEngine On RewriteCond %{REQUEST_URI} !^/\.well\-known/acme\-challenge/ RewriteRule ^(.*)$ https://%{HTTP_HOST}$1 [R=301,L]</VirtualHost>
运行
acme.sh --issue -d example.com -w /var/www/letsencrypt
后面显示
就是成功了。后面证书自行替换吧
续签(自动就加定时任务)
手动就运行这个命令
acme.sh --renew -d xxxx.com --ecc --force
或这个
acme.sh --cron -f
评论一下?