📦 文件说明
acme_3.0.sh:主脚本,用于实现 SSL 证书管理功能。
acme.sh:依赖工具脚本,自动管理 SSL 证书的核心工具。
项目地址:https://github.com/slobys/SSL-Renewal
🛠️ 使用步骤
1. 克隆项目
首先,将本项目克隆到本地:
git clone https://github.com/slobys/SSL-Renewal.gitcd SSL-Renewal2. 运行主脚本
执行脚本:
bash acme_3.0.sh3. 主菜单功能
运行脚本后会显示以下菜单:
============== SSL证书管理菜单 ==============1)申请 SSL 证书2)重置环境(清除申请记录并重新部署)3)退出============================================请输入选项(1-3):- 选项 1:开始申请 SSL 证书。
- 选项 2:清除现有申请记录并重置环境。
- 选项 3:退出脚本。
4. 申请 SSL 证书
选择 1)申请 SSL 证书 后,按照提示输入以下信息:
-
域名:需要申请证书的域名。
-
电子邮件地址:证书的注册邮箱。
-
证书颁发机构(CA):
- Let’s Encrypt
- Buypass
- ZeroSSL
- 防火墙设置:
- 是否关闭防火墙。
- 是否放行特定端口(如未关闭防火墙)。
系统会自动完成以下步骤:
- 检查并安装依赖(如 curl、socat、git 等)。
- 根据系统类型(Ubuntu/Debian 或 CentOS)配置防火墙。
- 安装 acme.sh 工具(如未安装)。
- 注册账户并申请 SSL 证书。
- 安装证书到指定路径:
- 证书路径:/root/<域名>.crt
- 私钥路径:/root/<域名>.key
- 创建自动续期任务(通过 crontab)。
5. 重置环境
选择 2)重置环境,可以清除 SSL 申请记录并重新部署。
📄 自动续期
脚本会自动创建续期任务,使用 crontab 定期运行:
- 续期脚本路径:/root/renew_cert.sh
- 任务周期:每天 0:00 自动检查并续期。
🌟 注意事项
- 确保正确配置域名的 DNS 解析。
- 如果使用防火墙,需根据提示放行 80 或 443 端口。
- 脚本支持 Let’s Encrypt、Buypass 和 ZeroSSL 三种证书颁发机构,用户可根据需求选择。
- 适用于 Ubuntu、Debian 和 CentOS 系统,其他系统需手动安装必要依赖。