当前位置: 首页 > news >正文

linux系统下nginx网站ssl证书自动续签

本文使用 acme.sh + 自动续签 + Nginx reload

1.安装 acme.sh

curl https://get.acme.sh | sh

acme.sh 在申请证书时,默认使用 ZeroSSL 作为 CA(证书颁发机构),ZeroSSL 免费额度有限(通常每月 3 张 DV 证书免费),超过后需要付费

如果你想继续用 Let’s Encrypt(完全免费,无次数限制),需要手动指定:

~/.acme.sh/acme.sh --set-default-ca --server letsencrypt

2.确认验证目录目录

首先需要确认网站根目录,通常在nginx配置中的root标识行,如果没有设置过网站根目录,则是nginx默认的目录,可以检查以下目录是否是网站根目录

ls /usr/local/nginx/html
ls /etc/nginx/html

 创建验证目录并赋予权限

mkdir -p /usr/local/nginx/html/.well-known/acme-challenge/
chmod -R 755 /usr/local/nginx/html/.well-known

 

3. 申请证书

假设你的网站是 example.com,网站根目录是 /usr/local/nginx/html :

~/.acme.sh/acme.sh --issue -d example.com -w /usr/local/nginx/html
  • -d example.com :域名

  • -w /var/www/html :HTTP 验证路径,对应 nginx 配置里 root 的路径

如果你有 www.example.com 也要加上:

~/.acme.sh/acme.sh --issue -d example.com -d www.example.com -w /usr/local/nginx/html

 

4.安装证书到你指定路径

~/.acme.sh/acme.sh --install-cert -d example.com \
--key-file /root/ssl_certs/example.com.key \
--fullchain-file /root/ssl_certs/example.com.pem \
--reloadcmd "systemctl reload nginx"

如果提示重启nginx失败,可以手动执行命令重启,如 systemctl restart nginx.service

 

5.检查自动更新

crontab -l

应该能看到类似:

0 0 * * * "~/.acme.sh"/acme.sh --cron --home "~/.acme.sh" > /dev/null

acme.sh 会每天检查一次证书是否快到期(30 天内),自动续签并执行 --reloadcmd

手动测试续签:

~/.acme.sh/acme.sh --renew -d example.com --force

 

 

注:以上方案由ChatGPT生成

 

http://www.hskmm.com/?act=detail&tid=16062

相关文章:

  • C#使用Bitmap操作图像的基础方法
  • 知识学报:位运算(1)
  • CentOS 7 下 Kubernetes 集群搭建与配置指南
  • 2024/9/24
  • Git 工作树 (worktree)、合并 (merge) 流程、拉取请求 (PR) 机制,以及基线分支概念
  • 【HD300I 】基于昇腾 310P 的全国产化智能计算模组
  • 《密码系统设计》第三周
  • 详细介绍:Cloudflare 推出 GenAI 安全工具,守护企业数据
  • 论小学教师转移矛盾的方法——以“小组连坐制”为例
  • 9.24
  • 编译器与链接器--通俗解释
  • WPF路由事件
  • VS2022 不支持 .NET Framework 4.0 的解决方法
  • 【Origin】数据分析后的图,提取到外部图表
  • P3747 [六省联考 2017] 相逢是问候
  • B1I、B1C、B2a双频北斗卫星定位芯片AT9850B-F7N-22
  • Wi-Fi技能——网络安全
  • idea打开properties文件中文乱码问题
  • 2025/9/22
  • 人机共生:AI如何重塑招聘全流程,赋能HR战略升级
  • hot100题简单题
  • Scanner 和if
  • python自动化操作PDF
  • 注意事项
  • 完整教程:【数据结构】 ArrayList深入解析
  • 产品经理如何借力项目管理软件,驾驭复杂项目并准时上线?
  • 公钥密码与可证安全概述
  • Python标准库enum模块实现枚举类
  • Filter过滤器
  • 程序员的旅行神器:用AI提示词工程解决选择困难症