acme自动化---免费SSL证书申请并自动续期

这篇具有很好参考价值的文章主要介绍了acme自动化---免费SSL证书申请并自动续期。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

acme.sh 仓库地址:acme.sh
acme.sh 中文说明:官方中文说明
各个 dnsapi 说明:dnsapi

一、安装并配置 acme.sh

安装 acme,后面my@example.com换成自己的邮箱

curl https://get.acme.sh | sh -s email=my@example.com

如果上面官方下载地址失败 或者 太慢,可以选用国内的备用地址

curl https://gitcode.net/cert/cn-acme.sh/-/raw/master/install.sh?inline=false | sh -s email=my@example.com

acme自动化---免费SSL证书申请并自动续期

然后在 root 目录下ls -a就可以看到有一个.acme.sh的文件夹,进入后里面有个 account.conf 配置文件,里面有前面安装时填写的邮箱,不知道有什么用,估计到时候会给通知什么的吧

进入.acme.sh 目录后使用下面命令开启 acme 自动更新

./acme.sh --upgrade --auto-upgrade

acme自动化---免费SSL证书申请并自动续期

在这里最好先切换一下证书类型,看下面续期时出现过问题

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

acme自动化---免费SSL证书申请并自动续期

二、配置 DNS API

通过官方说明文档可知,acme.sh 申请证书有两种方式,http 和 dns 验证

  1. http 方式需要在你的网站根目录下放置一个文件, 来验证你的域名所有权,完成验证. 然后就可以生成证书了
  2. 手动 dns 方式, 手动在域名上添加一条 txt 解析记录, 验证域名所有权

第一种方便一些,只需要一条命令就完成了,前提是需要有服务器并且在此服务器中搭建了网站
第二种更灵活一些,只需要有域名手动添加验证即可,不需要服务器,但是这种方式需要配置 Automatic DNS API,否则 acme.sh 将无法自动更新证书,此外配置了 DNS API 就不需要手动添加验证了

我使用的是 dnspod,所以这里写一下 dnspod 的,dnspod 的 token 生成页面,也可以进入dnspod 网站,点击右上角头像,然后点击 API 密钥,选择 DNSPod Token,就到了 dnspod 的 token 生成页面

点击创建密钥,输入获取到 ID 和 token,保存下来
acme自动化---免费SSL证书申请并自动续期

然后回到服务器配置刚才拿到的密钥

export DP_Id="密钥ID"
export DP_Key="密钥token"

acme自动化---免费SSL证书申请并自动续期

三、申请证书

使用下面命令申请证书,mydomain.com 就是需要申请证书的域名,支持通配符域名

./acme.sh --issue --dns dns_dp -d mydomain.com -d www.mydomain.com

证书很快就申请下来了,这里给出的 api id 和 api key 会被自动记录下来, 将来你在使用 dnspod api 的时候, 就不需要再次指定了,直接生成就好了
acme自动化---免费SSL证书申请并自动续期

申请的证书默认是放在/root/.acme.sh/目录下的,如果要在申请证书更改证书存放目录可以加入--cert-home参数,使用下面命令申请证书,其中 mydomain.com 是需要申请证书的域名,sslpath 是存放证书的目录

./acme.sh --issue --dns dns_dp -d mydomain.com --cert-home sslpath

四、删除证书

使用下面命令删除证书,mydomain.com 就是需要删除证书的域名,支持通配符域名

./acme.sh --remove -d mydomain.com

acme自动化---免费SSL证书申请并自动续期

四、使用

看上面申请证书后给的路径
第一个是证书位置
第二个是证书密钥位置
可以直接使用,我这里使用的是宝塔面板,所以直接配置 ssl 就行了,虽然是写需要 pem 格式,但是上面 cer 就可以直接使用
acme自动化---免费SSL证书申请并自动续期

保存之后剩余 3 个月左右到期了,按理说用这个 acme.sh 到了 30 天以内就会自动续期
acme自动化---免费SSL证书申请并自动续期

上面是重新写的,以下是之前写的,记录了一个问题没有删除,之前写的使用了freeSSL,但是使用acme.sh其实是不需要使用其他的配合,之前也是先接触到freeSSL,所以按照freeSSL教程做的,实际上使用其他的还可能会产生其他不太好的问题,之前有记录,但是这次重写删掉了

时隔两个月更新

上面可以看到申请的时候是 Jul 月也就是 7 月,也就是说到 10 月份到期,那么在 9 月份的时候应该会自动续期

上去之后看一眼,cer 是证书文件,key 是私钥文件,都没有更新,变得是 csr 文件,这个文件是申请前创建的,与这个无关,但是可以看出是有自动续期,但是没有续期成功
acme自动化---免费SSL证书申请并自动续期

我这里使用下面命令手动续期一下,看看是哪里的问题

acme.sh  --cron  --debug 2

结果后面给我报了什么连接超时,再次查看文件还是那三个变了,其他的没变
acme自动化---免费SSL证书申请并自动续期

看网上说有时候连接超时是因为 ZeroSSL 的原因,下面说一下

目前 acme.sh 支持 Let’s Encrypt、Buypass、ZeroSSL、SSL.com 和 Google Public CA,默认使用 ZeroSSL,如果需要更换可以使用下面命令:

切换 Let's Encrypt
acme.sh --set-default-ca --server letsencrypt
切换 Buypass
acme.sh --set-default-ca --server buypass
切换 ZeroSSL
acme.sh --set-default-ca --server zerossl
切换 SSL.com
acme.sh --set-default-ca --server ssl.com
切换 Google Public CA
acme.sh --set-default-ca --server google

我这里更换为 Let’s Encrypt
acme自动化---免费SSL证书申请并自动续期

然后再手动续期一下就正常了
acme自动化---免费SSL证书申请并自动续期

这里可以看到 key 还是没有变化的,但是证书是变了的,可以使用新的证书和这个 key
acme自动化---免费SSL证书申请并自动续期

测试了一下更换证书后又是 89 天了
acme自动化---免费SSL证书申请并自动续期

然后因为我这里使用的是宝塔面板,宝塔面板在使用 ssl 时会把填写的内容生成一个证书并保存到/www/server/panel/vhost/cert/网站 目录下,因此 acme 自动续期后宝塔面板的 ssl 并不会使用续期后的证书,这里只需要把网站的配置文件改一下就行
acme自动化---免费SSL证书申请并自动续期

把这两行路径改为 acme.sh 自动续期的证书和私钥的路径即可

文章来源地址https://www.toymoban.com/news/detail-411883.html

❀❀❀❀❀❀ 完结散花 ❀❀❀❀❀❀
Written ❤️ sywdebug.

到了这里,关于acme自动化---免费SSL证书申请并自动续期的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • acme.sh自动配置免费SSL泛域名证书并续期(Aliyun + Debian + nginx)

    以前使用Certbot自动配置SSL证书,需要安装snap管理器再安装Certbot,期间还要去找AliDNS脚本,比较麻烦。如果不想如此,推荐使用acme.sh自动化脚本,更方便快捷。 1. 安装acme.sh 脚本会安装home目录下:~/.acme.sh/。同时会创建一个cronjob,每天检测证书,快过期自动更新。 2. 更换证

    2024年02月04日
    浏览(38)
  • SSL 证书免费,自动续期的web服务器Caddy,Caddy2 实战

    Caddy官网 Caddy 是由go语言开发的web 服务器 ,和nginx 功能作用相同。但是区别在于caddy 没有很多的依赖,或者说是插件。并且 caddy 实现了 ssl 证书每三个月自动续期,ssl 证书免费 。这意味着 使用 caddy 作为web 服务器 不再有nginx 的 ssl 证书 到期且付费的困扰。 以上优点是我研

    2024年02月10日
    浏览(35)
  • ACME申请SSL证书

    我们使用ACME申请域名前,需要先配置nginx文件。 好的,接下来就可以申请域名了,出现下图代表申请成功。 接下来,我们需要创建一个专门存放证书的文件夹,下文我们安装证书时,就会安装进这个文件夹里面。 紧接着,我们完善我们上文的nginx配置文件,加上SSL部分的配

    2024年02月17日
    浏览(33)
  • SSL证书自动化管理有什么好处?如何实现SSL证书自动化?

    SSL证书是用于加密网站与用户之间传输数据的关键元素,在维护网络安全方面,管理SSL证书与部署SSL证书一样重要。定期更新、监测和更换SSL证书,可以确保网站的安全性和合规性。而自动化管理可以为此节省时间,并避免人为错误和不必要的风险。那么 SSL证书自动化管理有

    2024年01月19日
    浏览(55)
  • StartSSL免费SSL证书续期注意事项

    startssl的免费ssl证书有一年的有效期(包括登录startssl的用户登录证书和域名ssl证书)。上年申请的StartSSL的免费SSL证书快要过期了,需要renew。StartSSL证书的续期步骤和新申请证书的步骤差不多。请阅读本文并参考《全球唯一免费HTTPS证书颁发机构:StartSSL申请图文详细教程》

    2024年02月07日
    浏览(31)
  • Docker部署开源密码管理器Bitwarden, 并申请免费ssl证书自动刷新永不过期

    GitHub传送阵 由于我的安全习惯,我基本上不会在不同的应用程序上使用相同的密码。这使我需要在备忘录上记录大量的账号密码,每次登录系统时需要检索备忘录,这很麻烦。虽然Chrome的密码管理器也可以使用,但是其功能过于简单,无法记录其他非Web系统的账号。 最近加

    2024年02月06日
    浏览(45)
  • 每年的免费SSL证书,你们都是要去操作续期?

    如标题所问,大家的免费证书估计都是去阿里云免费拿的,但有效期是一年,每次到期都需要再去申请并且去替换自己服务器的证书。 不知道大家有没有了解FreeSSL,我近期发展这个网站 https://freessl.cn,如果你们都是个人站点,对证书没什么特别要求,可以考虑用他们家生成

    2024年02月08日
    浏览(35)
  • 使用 Certbot 并设置自动续期 SSL 证书

    步骤: 安装 Certbot:使用命令安装 Certbot: 获取 SSL 证书:运行 Certbot 命令来获取并安装 SSL 证书。 示例命令,替换其中的域名和路径信息: 这将使用 Certbot 的 webroot 插件来进行验证,并为你的域名生成 SSL 证书。确保将 /path/to/your/website 替换为你网站的根目录路径, your-do

    2024年02月15日
    浏览(47)
  • 【SSL证书】阿里云免费 SSL证书申请 + nginx 部署全解

    一、环境 二、步骤 三、实战 Stage 1:申请免费证书  1. 进入 - 数字证书管理服务(SSL证书) 2. 创建证书  3. 申请证书  Stage 2:域名解析 1. 进入 - 域名管理 2. 点击 - 域名 3. 点击 - 域名解析 4. 点击 - 添加记录 5. 返回 - 数字证书管理服务(SSL证书)- 查看验证 6. 下载证书 

    2024年02月12日
    浏览(35)
  • 申请部署阿里云SSL免费证书

    使用宝塔自动创建的证书有时候会报NET::ERR_CERT_COMMON_NAME_INVALID,并且每次只能三个月,需要点击续期非常麻烦,容易遗忘。 前往阿里云管理控制台【数字证书管理服务】【SSL证书】,每年20个额度,一年后会过期失效 填写申请的域名 申请成功后,刷新列表页面,可以看到下

    2024年02月12日
    浏览(29)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包