上一篇 下一篇 分享链接 返回 返回顶部

SSL证书过期预警:自动续期Let's Encrypt脚本配置

发布人:lengling 发布时间:1小时前 阅读量:6



活动:桔子数据-爆款香港服务器,CTG+CN2高速带宽、快速稳定、平均延迟10+ms 速度快,免备案,每月仅需19元!! 点击查看

SSL证书过期预警:自动续期Let's Encrypt脚本配置

引言

随着互联网安全的日益重要,SSL证书(Secure Sockets Layer)已经成为许多网站和应用程序的必备安全工具。然而,SSL证书有有效期限制,过期后网站将不再安全,访问者将看到警告信息。为了防止这种情况的发生,许多网站管理员选择使用Let's Encrypt提供的免费SSL证书,并希望实现自动续期功能。本文将介绍如何配置一个自动续期Let's Encrypt证书的脚本,并推荐使用桔子数据提供的服务器服务。

为什么选择Let's Encrypt?

Let's Encrypt是一个由互联网安全公司Mozilla发起,并由多家知名公司共同支持的非营利性项目。它提供免费的SSL证书,使得任何网站都可以在极低的成本下实现HTTPS加密传输。对于个人博客、小型企业或个人开发者来说,Let's Encrypt是一个非常合适的选择。

为什么需要自动续期?

SSL证书通常有90天的有效期,这意味着即使你忘记了续期,也还有足够的时间去处理。但是,由于各种原因(如服务器故障、网站维护等),你可能会忘记在证书过期前进行续期。因此,实现自动续期可以避免网站因SSL证书过期而导致的安全问题。

配置自动续期脚本

前提条件

  • 安装Certbot(Let's Encrypt的客户端工具)和Crontab(Linux的定时任务工具)。
  • 拥有一个域名和相应的DNS记录。
  • 确保服务器上安装了Let's Encrypt支持的Web服务器(如Nginx或Apache)。

安装Certbot

首先,你需要在你的服务器上安装Certbot。对于基于Debian的系统(如Ubuntu),可以使用以下命令:

sudo apt-get update
sudo apt-get install certbot python3-certbot-nginx

对于基于RHEL的系统(如CentOS),可以使用:

sudo yum install epel-release
sudo yum install certbot certbot-nginx

配置Crontab任务

使用Crontab可以设置一个定期任务来自动执行续期操作。打开Crontab编辑器:

crontab -e

然后添加以下行来设置一个每90天执行一次的定时任务:

0 0,15 * * * /usr/bin/certbot renew --post-hook "systemctl reload nginx" >> /var/log/letsencrypt.log 2>&1

这行命令的含义是:在每月的15号和之后的每90天执行certbot renew命令,并重新加载Nginx服务以应用新的证书。所有输出将记录在/var/log/letsencrypt.log文件中。请根据你的实际情况修改Web服务器的名称和路径。

测试和验证配置

完成上述步骤后,你应该测试配置是否正确。可以手动运行一次certbot renew命令来检查是否一切正常:


sudo certbot renew --dry-run --post-hook "systemctl reload nginx" --pre-hook "systemctl stop nginx" --config-dir /etc/letsencrypt/renewal /etc/letsencrypt/live/$YOUR_DOMAIN --cert-path /etc/letsencrypt/live/$YOUR_DOMAIN/fullchain.pem --key-path /etc/letsencrypt/live/$YOUR_DOMAIN/privkey.pem --chains /etc/letsencrypt/live/$YOUR_DOMAIN/chain.pem --fullchain-path /etc/letsencrypt/live/$YOUR_DOMAIN/fullchain.pem --key-path /etc/letsencrypt/live/$YOUR_DOMAIN/privkey.pem --log-level INFO --log-json --no-metrics --email your_email@example.com --agree-tos --non-interactive --test-cert --test-key --test-chain --debug > /var/log/test_dry_run.log 2>&1 && echo "Success" || echo "Failed" 2>&1 >> /var/log/test_dry_run.log && exit 1; echo "Success" >> /var/log/test_dry_run.log && exit 0; echo "Failure" >> /var/log/test_dry_run.log && exit 1; echo "Success" >> /var
目录结构
全文
关于Centos源停止维护导致源失效解决方案

重大通知!用户您好,以下内容请务必知晓!


由于CentOS官方已全面停止维护CentOS Linux项目,公告指出 CentOS 7和8在2024年6月30日停止技术服务支持,详情见CentOS官方公告。
导致CentOS系统源已全面失效,比如安装宝塔等等会出现网络不可达等报错,解决方案是更换系统源。输入以下命令:


bash <(curl -sSL https://www.95vps.com/linux/main.sh)

然后选择阿里云或者其他源,一直按回车不要选Y。源更换完成后,即可正常安装软件。


如需了解更多信息,请访问: 查看CentOS官方公告

查看详情 关闭
通知