centos Let‘s Encrypt 免费https证书申请,并且自动续约

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

一、首先我们要使用certbot 工具

官网地址: https://certbot.eff.org/instructions?ws=other&os=centosrhel8

下载 snap 工具

sudo yum install snapd
sudo systemctl enable --now snapd.socket
sudo ln -s /var/lib/snapd/snap /snap
sudo systemctl status snapd
sudo systemctl start snapd

下载安装 cerbot
安装很简单

sudo snap install --classic certbot

二、装完后我们要配置证书

  1. ** 在使用 webroot 之前,先配置根目录** 我这边以 nginx 为例
     location ^~ /.well-known {
        allow all;
        root /www/xxx.top;
    }

主要是 cerbot 会访问到 .wel-known 这个目录文章来源地址https://www.toymoban.com/news/detail-721381.html

  1. 配置完后,我们运行命令
sudo certbot certonly --webroot -w /home/ec2-user/data/docker/services/nginx/www/xxx.top -d xxx.top
-w 或 --webroot-path: 这是你的网站的根目录的路径,certbot 会在这个目录下创建一个名为 .well-known 的子目录(如果还没有的话),并在其中放置验证文件。这个参数后面的值应该是网站的根目录的绝对路径。

-d: 这用于指定你想要为其获取或续约证书的域名。例如,-d xxx.top 表示你想要获取或续约 xxx.top 的证书。

要注意的是,如果你为多个域名获取证书,你可以多次使用 -d 参数,例如:-d example.com -d www.example.com。如果这些域名使用相同的 webroot,那么只需一个 -w 参数。但是,如果它们有不同的 webroot,你需要为每个域名指定其对应的 webroot,如:-w /path/to/webroot1 -d example.com -w /path/to/webroot2 -d sub.example.com

  1. 证书生成后会打印证书路径
    一般在 /etc/letsencrypt/live/ 这个目录下

三、自动续约,申请的3个月就过期了

  1. 查看我们续约的域名
sudo certbot certificates
  1. 续约命令
sudo certbot renew --quiet --deploy-hook "/home/ec2-user/data/docker/services/nginx/deploy_script.sh"
这个快过期后自动续约, --quiet 参数,那么 Certbot 在默认情况下是不会在终端中输出任何信息的,除非发生错误。这是为了使 Certbot 在静默模式下运行,特别是在计划任务或自动化任务中非常有用。

如果想强制续约测试,加上 --force-renewal,这个有次数限制,建议不需要强制续约,只在调试的时候使用

sudo certbot renew --force-renewal --quiet --deploy-hook "/home/ec2-user/data/docker/services/nginx/deploy_script.sh"


  1. 完整脚本
  • 定时任务
每天去检测下
0 2 * * * /home/ec2-user/data/docker/services/nginx/renew_and_deploy.sh
  • renew_and_deploy.sh
#!/bin/bash

# 获取 Certbot 提供的续约域名

# Renew the certificate
sudo certbot renew --quiet --deploy-hook "/home/ec2-user/data/docker/services/nginx/deploy_script.sh"

echo "Script executed at $(date)" >> /home/ec2-user/data/docker/services/nginx/logfile.log


  • deploy_script.sh
#!/bin/bash

# 测试 强制续约测试 sudo certbot renew --force-renewal --quiet --deploy-hook "/home/ec2-user/data/docker/services/nginx/deploy_script.sh"
# 确认证书时间 sudo openssl x509 -in /etc/letsencrypt/live/xxx.top/fullchain.pem -text -noout | grep "After"
renewed_domains=$RENEWED_DOMAINS

# 检查是否续约了特定的域名
if [[ $renewed_domains == *"xxx.top"* ]]; then
    # 对 example.com 做特定的操作
    echo " 续约xxx.top" >> /home/ec2-user/data/docker/services/nginx/logfile.log

    # Copy the renewed certificate to the desired location
    sudo cp -f /etc/letsencrypt/live/xxx.top/fullchain.pem /home/ec2-user/data/docker/services/nginx/services/nginx/ssl/xxx.top
    sudo cp -f /etc/letsencrypt/live/xxx.top/privkey.pem /home/ec2-user/data/docker/services/nginx/services/nginx/ssl/xxx.top

    # Reload the nginx inside the docker container
    docker exec -it nginx nginx -s reload
fi



其他日志输出

  sudo tail -n 100 /var/log/letsencrypt/letsencrypt.log

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

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

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

相关文章

  • SSL证书系列--又拍云Let’s Encrypt免费DV SSL证书使用教程

    原文网址:SSL证书系列--又拍云Let’s Encrypt免费DV SSL证书使用教程_IT利刃出鞘的博客-CSDN博客 本文介绍如何使用又拍云部署Let’s Encrypt免费DV SSL证书。 了解和关注SSL证书的朋友,似乎没有理由不知道 Let’s Encrypt 这个免费、自动化、开放的证书签发服务。         它由 I

    2024年02月09日
    浏览(44)
  • 宝塔面板站点SSL,Let‘s Encrypt 证书申请报错:Invalid version. The only valid version for X509Req is 0.

    Linux正式版 7.9.10 CentOS 7.3.1611 x86_64(Py3.7.9) 新服务器 , 新装宝塔 , 新增站点 ,ssl选择Let’s Encrypt,点击申请证书 报错: 文件验证和DNS验证都报这个错。 试过修复面板(无效),试过回退到7.9.8版本(无效) 您好,您这个报错是因为面板依赖的不兼容导致的证书申请失败,

    2024年02月09日
    浏览(44)
  • Nginx 域名SSL证书配置(网站 http 升级为 https) acme.sh 申请免费SSL永久证书(自动续期)

    小编这里用的是godaddy购买的域名 服务器是aws acme.sh GitHub地址  https://github.com/acmesh-official/acme.sh 配合nginx进行部署,后面会贴上nginx.conf 我这里是多个域名用同一个证书    首先你得在自己服务器上面进行部署nginx,如果不知道怎么操作的,可以参考我这一篇博客,执行到这一

    2024年01月24日
    浏览(60)
  • Docker获取Let`s Encrypt SSL 证书

    文中的操作都是在CentOS Stream release 9下执行的,使用的是root用户。 关于Let`s Encrypt可以参见这里。 certbot安装使用参加这里。 为了方便维护、升级,同时也避免破坏本地的开发环境,我这里使用docker方式来运行certbot。整个过程分为两步:首次申请证书和证书更新。 因为我的文

    2024年02月01日
    浏览(36)
  • 腾讯云免费SSL证书申请流程_每年免费50个HTTPS证书

    2023腾讯云免费SSL证书申请流程,一个腾讯云账号可以申请50张免费SSL证书,免费SSL证书为DV证书,仅支持单一域名,申请腾讯云免费SSL证书3分钟即可申请成功,免费SSL证书品牌为TrustAsia亚洲诚信,腾讯云百科分享腾讯云免费SSL证书申请流程,3分钟搞定: 目录 腾讯云免费SSL证

    2024年02月09日
    浏览(68)
  • 3分钟:腾讯云免费SSL证书申请教程_免费HTTPS证书50张

    2023腾讯云免费SSL证书申请流程,一个腾讯云账号可以申请50张免费SSL证书,免费SSL证书为DV证书,仅支持单一域名,申请腾讯云免费SSL证书3分钟即可申请成功,免费SSL证书品牌为TrustAsia亚洲诚信,腾讯云百科分享腾讯云免费SSL证书申请流程,3分钟搞定: 目录 腾讯云免费SSL证

    2024年02月10日
    浏览(79)
  • Https域名解析——腾讯云免费SSL证书申请流程

    最近购买了一台腾讯云服务器,采用腾讯免费域名解析,只是绑定成功http请求及www请求。网站地址为:http://kalehu.com https一直不能访问,一直以为腾讯云与阿里虚拟主机绑定一样,只需勾选一个选项,可以直接完成,后来发现思路是错误。服务器绑定https,需要申请SSL证书之

    2024年02月09日
    浏览(65)
  • 利用FreeSSL为域名免费申请Https证书指南(一年续一次)

    打开FreeSSL网站(https://freessl.cn/)并输入域名(主域名即可),选择第二个双域名,即同时申请www和不含www的域名的证书  点击“创建免费的SSL证书”,输入邮箱,核对一下申请证书的域名,下面选项可以不改,点击“点击创建”  此时跳转的网页提示需要登录,如之前注册

    2024年02月04日
    浏览(54)
  • IP SSL证书免费申请教程(给IP地址开启https)

    首先IP地址申请的前提:80端口有打开,或者可以短暂的打开10分钟左右等验证完IP管理权再关掉。 一:打开JoySSL官网选择IP地址证书并下单加入购物车,之后结账后就会跳转到证书申请界面。 二:填写需要申请证书的IP信息 三:填写单位信息,并提交CSR,JoySSL是自动给您生成

    2024年04月15日
    浏览(46)
  • 轻松配置 https:Let‘s Encrypt 介绍及 Nginx Proxy Manager 实用操作教程

    一般我们在本地进行 web 开发时用的都是 http 协议,而部署到服务器上之后为了安全都要配置 https,以保证客户端和服务器之间的通信内容得到加密,不会被泄露或篡改。 本文将介绍 https 协议的基本知识(如果有基础可以跳过),以及如何使用 Let’s Encrypt 给你的服务优雅地

    2024年03月11日
    浏览(45)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包