acme脚本申请证书

望川
2024-06-07 / 0 评论 / 18 阅读 / 正在检测是否收录...

为避免出现未知错误导致证书申请失败,下面操作均为root用户执行

申请及安装证书

# 关闭防火墙
ufw disable

# 如果启动了nginx,要先关闭nginx,因为nginx服务会占用80端口导致申请证书失败
sudo systemctl stop nginx.service

# 安装socat
apt install socat

# 安装acme
curl https://get.acme.sh | sh

# 添加软链接
ln -s  /root/.acme.sh/acme.sh /usr/local/bin/acme.sh

# 注册账号
curl https://get.acme.sh | sh

# 切换默认CA机构
acme.sh --set-default-ca --server letsencrypt

# 申请证书 
acme.sh  --issue -d 替换为你的域名  --standalone -k ec-256

# 安装证书文件到指定路径
acme.sh --install-cert -d 替换为你的域名 --ecc --key-file       /path/to/cert_file.key  --fullchain-file /path/to/cert_file.crt 

# 启动nginx
systemctl start nginx.service

# 开启防火墙
ufw enable

证书续签

# 关闭nginx和防火墙
ufw disable
sudo systemctl stop nginx.service

# 给单个域名续期
acme.sh --renew -d 你的域名

# 一键续期所有证书
acme.sh --renew-all 

# 启动nginx和打开防火墙
systemctl start nginx.service
ufw enable

注意: 如果证书还没有到期就执行续期操作,可能会失败,此时可以通过在命令中添加--force参数强行续期

常用命令

# 列出所有证书信息
acme.sh --list

# 查看某个证书的信息
acme.sh --list -d 你的域名

# 吊销证书
acme.sh --revoke -d 你的域名

# 删除证书
acme.sh --remove -d 你的域名

注意: 执行吊销和删除证书操作后,并不会删除已安装的证书文件,还需要手动删除相关文件

0

评论

博主关闭了当前页面的评论