acme.sh从 letsencrypt 生成SSL免费证书并自动更新证书

本文涉及的产品
云解析 DNS,旗舰版 1个月
全局流量管理 GTM,标准版 1个月
.cn 域名,1个 12个月
简介: acme.sh从 letsencrypt 生成SSL免费证书并自动更新证书

acme.sh 实现了 acme 协议, 可以从 letsencrypt 生成免费的证书

ACME 协议:

Automatic Certificate Management Environment 自动化证书管理环境

文档:

目录

1、安装acme.sh

方式一:从github安装

curl https://get.acme.sh | sh -s email=my@example.com
# 或者
wget -O -  https://get.acme.sh | sh -s email=my@example.com

方式二:从gitee安装

如果国内网络环境不好,可以从gitee下载安装

https://gitee.com/neilpang/acme.sh

wget https://gitee.com/neilpang/acme.sh/repository/archive/master.zip
unzip master.zip
cd acme.sh-master
./acme.sh --install \
--email my@example.com

安装过程中会 自动完成 以下操作

1、安装目录:~/.acme.sh

$ ls ~/.acme.sh
account.conf  
acme.sh  
acme.sh.csh  
acme.sh.env  
deploy  
dnsapi  
notify

2、执行文件路径:~/.acme.sh/acme.sh

3、环境变量修改

$ cat ~/.bashrc
. "~/.acme.sh/acme.sh.env"
$ cat ~/.cshrc
source "~/.acme.sh/acme.sh.csh"
$ cat ~/.tcshrc
source "~/.acme.sh/acme.sh.csh"

4、添加crontab定时任务

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

查看安装结果

$ source ~/.bashrc
$ acme.sh --version
https://github.com/acmesh-official/acme.sh
v3.0.5

2、申请证书

方式一:Webroot模式

只需要指定域名, 并指定域名所在的网站根目录

acme.sh --issue \
--domain example.com \
--domain www.example.com \
--webroot /home/wwwroot/example.com

每60天会自动更新

方式二:手动DNS验证申请

手动在域名上添加一条 txt 解析记录, 验证域名所有权

acme.sh --issue --dns \
--domain example.com \
--yes-I-know-dns-manual-mode-enough-go-ahead-please
# 在域名解析管理中,添加dns记录值
Add the following TXT record:
[2023年 04月 08日 星期六 21:57:13 CST] Domain: '_acme-challenge.example.com'
[2023年 04月 08日 星期六 21:57:13 CST] TXT value: 'o4MgobqPJ53E4RxRjO0d_mKSwGaNnjDZDlQxIW6iIXc'
# 添加完txt解析之后,重新生成证书
acme.sh --renew \
--domain example.com \
--yes-I-know-dns-manual-mode-enough-go-ahead-please

注意:使用这种方式 acme.sh 将无法自动更新证书

3、安装/copy证书

acme.sh --install-cert \
--domain example.com \
--key-file       /usr/local/nginx/conf/ssl/www.example.com.key  \
--fullchain-file /usr/local/nginx/conf/ssl/www.example.com.pem \
--reloadcmd     "service nginx force-reload"

4、其他命令

# 查看帮助
acme.sh -h
# 查看证书列表
acme.sh --list
Main_Domain  KeyLength  SAN_Domains  CA           Created               Renew
example.com      "2048"     www.example.com  ZeroSSL.com  2023-04-05T12:54:46Z  2023-06-04T12:54:46Z
# 查看域名配置
acme.sh --info --domain example.com
# 切换默认证书申请服务器
# 默认使用 ZeroSSL,以下示例切换 Let's Encrypt
acme.sh  --set-default-ca  --server letsencrypt


相关文章
|
2天前
|
运维 安全 数据建模
阿里云SSL证书收费版和免费版SSL有什么区别?全方位对比
阿里云提供免费和个人测试(Pro)及正式版SSL证书。免费版有效期仅3个月,适合个人网站或测试使用;个人测试(Pro)版68元/年,有效期12个月;正式版价格数百至数千元不等,有效期至少1年,支持DV、OV、EV证书类型,具有高安全等级、良好兼容性、稳定OCSP验证、SLA保障及安全保险赔付等优势,并提供最长3年的服务周期与人工客服支持。详情与报价参见SSL官方页面。
45 20
|
15天前
|
运维 安全 数据建模
阿里云免费SSL证书和收费版SSL证书有什么区别?
阿里云提供免费与收费SSL证书,前者有效期仅3个月,适合个人网站或测试使用;后者有效期至少1年,具备更高安全等级、良好兼容性及OCSP验证稳定性等优势,适用于企业网站,尤其政府、金融等领域建议选用OV或EV型证书以确保数据与身份认证安全。详细了解与报价请访问SSL证书官方页面。
115 2
|
15天前
|
网络协议 网络安全 数据安全/隐私保护
🔒SSL免费证书自动申请及续期-Certimate
Certimate 是一款旨在简化 SSL 证书管理的工具,尤其适用于需要维护多个域名的个人或小企业用户。它可以自动申请和续期证书,避免了手动操作的繁琐与易忘问题。Certimate 支持私有部署,确保数据安全,并能通过简单配置自动完成证书申请与续期,无需人工干预。详情及使用文档见:[https://docs.certimate.me](https://docs.certimate.me)。
158 1
|
28天前
|
监控 安全 Linux
在Linux中,如何管理SSL/TLS证书?
在Linux中,如何管理SSL/TLS证书?
|
25天前
|
安全 网络安全 Windows
【Azure App Service】遇见az命令访问HTTPS App Service 时遇见SSL证书问题,暂时跳过证书检查的办法
【Azure App Service】遇见az命令访问HTTPS App Service 时遇见SSL证书问题,暂时跳过证书检查的办法
【Azure App Service】遇见az命令访问HTTPS App Service 时遇见SSL证书问题,暂时跳过证书检查的办法
|
26天前
|
网络协议 应用服务中间件 网络安全
阿里云免费SSL申请流程(白嫖20张SSL免费证书)2024年新版教程
本文详述了2024年最新的阿里云免费SSL证书申请流程。用户可通过阿里云数字证书管理服务控制台一键申请最多20张免费单域名SSL证书,每张证书有效期为3个月。首先登录控制台,选择“SSL证书管理”下的“个人测试证书”,同意协议并完成购买流程。之后需创建证书、输入域名等信息并进行域名验证。验证方法包括手动DNS验证、域名授权自动化验证或文件验证。完成验证后,等待审核通过即可下载适用于不同服务器类型的SSL证书。请注意,阿里云免费SSL证书到期后不支持续费,需重新申请。了解更多详情,请访问阿里云官方SSL证书页面。
|
26天前
|
安全 数据建模 网络安全
阿里云SSL证书价格多少钱一年?单域名和通配符收费明细整理
阿里云提供多样化的SSL证书服务,包括免费及付费选项。免费版由DigiCert提供,适合基本需求,有效期为3个月。付费证书品牌涵盖WoSign、DigiCert、GlobalSign等,价格从238元/年起。不同品牌与类型的证书(如DV、OV、EV)费用各异,满足各类安全需求。详情及最新价格请访问阿里云官方页面。
|
29天前
|
安全 Linux 应用服务中间件
在Linux中,SSL/TLS证书的作用以及如何在Linux中管理它们?
在Linux中,SSL/TLS证书的作用以及如何在Linux中管理它们?
|
2月前
|
应用服务中间件 网络安全 nginx
使用Nginx Proxy Manager配置Halo的反向代理和申请 SSL 证书
本文引导如何用Nginx Proxy Manager (NPM)配置Halo的反向代理与SSL证书。NPM简化了Nginx的配置流程,适合无Nginx基础的用户。安装NPM无需额外安装Nginx,避免端口冲突。通过`docker-compose.yaml`启动NPM服务,并映射必要的端口。配置Halo反向代理需登录NPM面板,添加代理主机,设置域名、转发IP等参数。NPM支持自动申请与续期SSL证书,确保网站安全访问。更多Halo安装细节,请参考[如何在Linux云服务器上通过Docker Compose部署安装Halo](https://zhangfeidezhu.com/?p=631).
125 0
使用Nginx Proxy Manager配置Halo的反向代理和申请 SSL 证书
|
1月前
|
应用服务中间件 Linux API
Linux 利用 Cloudflare API 配置 acme.sh 自动续签 SSL (Apache、Nginx适用)
安装acme.sh工具,命令为`curl https://get.acme.sh | sh -s email=你的邮箱`。接着配置Cloudflare API,创建并记录API令牌及Zone ID。最后通过`acme.sh --issue -d 你的域名 --dns dns_cf`签发SSL证书,对于Nginx可使用`acme.sh --install-cert`命令安装证书,并设置自动重载Nginx服务。