☰
Linux Nginx 纯手动 Let‘s Encrypt 泛域名证书配置教程
2026/9/25 13:30:55 网站建设 项目流程

一、教程说明

  • 纯 HTTP 验证(通用所有域名厂商:腾讯云、华为云、Godaddy、Namesilo 均可)
  • 自动续期 100% 稳定
  • 一张泛域名证书适配所有二级域名:www / api / hr / test 全部通用
  • 适配所有 Nginx 网站
    适用系统:Ubuntu / Debian / CentOS
    二、环境准备(必须)
  1. 域名解析 A记录 指向当前服务器公网IP

  2. 服务器 80端口、443端口放行

  3. Nginx 正常运行
    三、安装 acme.sh(替代难用的 certbot)
    acme.sh 更轻量、更少报错、自动续期更强
    curl https://get.acme.sh | sh
    source ~/.bashrc
    四、切换为 Let’s Encrypt 官方证书机构
    acme.sh --set-default-ca --server letsencrypt
    五、注册账号(必须做一次)
    acme.sh --register-account -m your@email.com
    六、创建证书验证目录(HTTP验证核心)
    所有域名统一使用此目录验证,无需每个域名配置
    mkdir -p /var/www/letsencrypt/.well-known/acme-challenge
    七、Nginx 全局通用验证配置(关键!只需配置一次)
    编辑 Nginx 默认配置,给所有网站统一开启验证:
    vim /etc/nginx/nginx.conf
    在 http {} 内部加入:
    server {
    listen 80 default_server;
    server_name _;

    location /.well-known/acme-challenge/ {
    root /var/www/letsencrypt;
    try_files $uri =404;
    }
    }
    检查 Nginx 配置
    nginx -t
    systemctl reload nginx
    ✅ 至此:所有域名自动支持证书验证,无需单独配置
    八、申请泛域名证书(*.你的域名.com)
    ❗ 纯HTTP模式,无阿里云、无DNS TXT、无API
    将下面域名替换成你的
    acme.sh --issue
    –webroot /var/www/letsencrypt
    -d 域名
    -d *.域名
    成功后证书路径
    /root/.acme.sh/域名_ecc/
    fullchain.cer # Nginx 使用的完整证书
    域名.key # 私钥
    九、任意 Nginx 站点 HTTPS 443 配置模板(通用)
    所有二级域名直接复制使用,无需重新申请证书

HTTP 80 强制跳转 HTTPS

server {
listen 80;
server_name 域名;
return 301 https://hosthosthostrequest_uri;
}

HTTPS 443 证书配置

server {
listen 443 ssl;
server_name 域名;

ssl_certificate /root/.acme.sh/域名_ecc/fullchain.cer; ssl_certificate_key /root/.acme.sh/域名_ecc/域名.key; ssl_protocols TLSv1.2 TLSv1.3; ssl_prefer_server_ciphers on; ssl_session_cache shared:SSL:10m; # 此处替换为你自己的业务配置 location / { proxy_pass http://127.0.0.1:3010; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; }

}
十、修复证书权限(Nginx 必做)
chmod 644 /root/.acme.sh/域名_ecc/fullchain.cer
chmod 600 /root/.acme.sh/域名_ecc/域名.key
十一、配置自动续期(全自动、永久有效)
证书到期前自动续期 + 自动重载 Nginx
acme.sh --install-cert
-d 域名
-d *.域名
–reloadcmd “systemctl reload nginx”
十二、查看自动续期定时任务
crontab -l
默认每天自动检测、自动续期、自动刷新 Nginx
十三、手动测试续期
acme.sh --renew -d 域名 -d *.域名 --force
十四、常用查看命令
查看证书覆盖域名
openssl x509 -in /root/.acme.sh/域名_ecc/fullchain.cer -noout -text | grep DNS
查看证书到期时间
openssl x509 -in /root/.acme.sh/域名_ecc/fullchain.cer -noout -dates
十五、新增网站快速配置方法(超级省事)
以后不管多少域名,无需重新申请证书
只需改 server_name,证书路径完全不变
支持:aaa.你的域名.com、bbb.你的域名.com 无限新增
总结:这套流程优点(纯本地、零阿里云)

  • ✅ 不需要阿里云 DNS、不需要 AccessKey
  • ✅ 不需要任何第三方 API
  • ✅ 一张证书绑定所有二级域名
  • ✅ 全自动续期,永久不用管
  • ✅ 所有 Nginx 站点通用
  • ✅ 无报错、无404验证问题、无限流

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询