零成本实现Nginx证书自动化续签全攻略:从通配符申请到crontab部署
HTTPS已成为现代网站的标配,但证书管理却让许多开发者头疼——手动更新容易遗漏,过期导致服务中断,通配符证书配置复杂。本文将彻底解决这些痛点,通过Let's Encrypt免费证书+acme.sh工具链,构建完整的自动化证书管理方案。
1. 环境准备与工具链搭建
在开始自动化证书管理之前,我们需要准备基础环境。这套方案适用于绝大多数Linux发行版,本文以Ubuntu 22.04 LTS为例。
基础依赖安装:
sudo apt update && sudo apt install -y \
git \
socat \
openssl \
cron \
nginx
acme.sh作为证书管理工具的核心,其安装只需一条命令:
curl https://get.acme.sh | sh -s email=your_email@example.com
安装完成后,建议将acme.sh添加到PATH环境变量:
echo 'export PATH="$HOME/.acme.sh:$PATH"' >> ~/.bashrc
source ~/.bashrc
验证安装是否成功:
acme.sh --version
# 预期输出:v3.0.6或更高版本
DNS API集成(以阿里云DNS为例):
- 获取阿里云API密钥:RAM控制台 → 创建子账号 → 授权AliyunDNSFullAccess权限
- 配置环境变量:
export Ali_Key="your_access_key"
export Ali_Secret="your_access_secret"
提示:不同DNS服务商配置略有差异,acme.sh支持100+种DNS API,包括Cloudflare、GoDaddy等主流厂商。
2. 通配符证书申请实战
通配符证书(Wildcard Certificate)可覆盖同一主域的所有子域名,极大简化多子域名场景的证书管理。Let's Encrypt通过DNS验证方式签发通配符证书。
单命令申请通配符证书:

&spm=1001.2101.3001.5002&articleId=154864957&d=1&t=3&u=659e2581727c4e0cb619a6c3c95f0fbc)
2799

被折叠的 条评论
为什么被折叠?



