戳下方名片,关注并星标!
回复“1024”获取2TB学习资源!
👉体系化学习:运维工程师打怪升级进阶之路 4.0
— 特色专栏 —
MySQL / PostgreSQL / MongoDB
ElasticSearch / Hadoop / Redis
Kubernetes / Docker / DevOps
Nginx / Git / Tools / OpenStack
大家好,我是民工哥!
HTTPS 证书,又称为 SSL 证书,是一种数字证书,用于对网站的服务器进行身份验证和加密数据传输。它基于 HTTP 进行通信,但增加了 SSL/TLS 加密层,为数据的安全传输提供了强有力的保障。
当我们在浏览器中输入一个网址时,如果该网站使用了 HTTPS 证书,那么浏览器地址栏会显示一个小锁标志,表示该网站是安全的。
之前给大家介绍过申请免费的 SSL 证书的相关方法:这 6 大免费申请 HTTPS 证书的方法!没人会告诉你,但是,很多读者朋友也提到了一个问题,现在免费的证书都只有3个月的有效期,所以,需要频繁的续签,很麻烦,如果有一个自动续签的工具就非常方便了。
所以,今天,民工哥给大家带来一个自动续签工具:httpsok!一分钟轻松搞定 SSL 证书自动续签,解决免费证书每 3 个月失效问题!
简介
httpsok 是一个专为 Nginx 和 OpenResty 服务器设计的 HTTPS 证书自动续签工具。稳定、安全、可靠。
功能特点
-
简单高效:一行命令,一分钟内即可轻松搞定SSL证书自动续签。
-
自动检测:无需关心Nginx配置,httpsok能自动识别证书配置,适用于老旧系统、复杂配置的生产环境。
-
多场景支持:支持泛解析、多域名、多服务器场景。
-
证书监控:对于即将失效的证书,提供公众号推送提醒。
-
兼容性好:兼容主流的Linux系统,如Debian、CentOS、Ubuntu、TencentOS等,同时也支持Docker环境运行。
-
支持手动申请:支持手动申请证书,方便部署CDN、OSS等场景。
优势
-
轻松管理:集中管理所有证书,一目了然,轻松掌握证书状态。
-
实时预警:及时提醒证书到期,确保网站始终安全可靠。
-
自动签发:节省宝贵的时间和精力,让证书更新变得轻松高效。
-
安全可靠:采用先进的安全技术,保护证书和数据安全。
应用场景
-
Nginx自动续期https证书
-
适合多台nginx服务器的情况
-
适合多域名、泛解析
-
老旧系统,不敢去修改nginx配置
如何使用 httpsok?
安装httpsok
首先,你需要登陆到控制台,并获取一个token。
然后使用curl命令和bash脚本来安装httpsok,命令格式如下:
curl -s https://fposter.cn/httpsok.sh | bash -s 'your token'
这里的'your token'需要替换为你从控制台获取的token(如图)。
自动检测Nginx证书
安装成功后,httpsok会自动检测系统中的nginx证书。这个过程不需要用户进行额外的操作。
DNS解析配置(如果需要)
-
如果你的域名需要进行DNS解析配置,你可以添加一条类型为CNAME的DNS解析记录。
-
添加成功后,请等待大约1分钟,以便DNS更改生效。然后再次运行安装脚本。
-
常见的一些云厂商DNS 配置:https://httpsok.com/doc/guide/dns.html
证书续签
-
一旦httpsok检测到Nginx证书即将到期,它会自动进行证书的续签操作。
-
你可以通过配置公众号推送提醒来监控证书的到期情况,确保在证书到期前能够及时处理。
CDN 证书部署
进入自动部署
页面,选择CDN
标签,点击新建部署任务
按钮,如下:
填写下面的相关信息:
-
选择云厂商
-
配置 SecretId 和 SecretKey
-
选择域名
-
DNS验证通过后,点击确定
点击确认后,任务进入待部署
状态,点击部署
按钮
部署成功后,可以看到状态发生了变化,证书有效期也有了。
访问你的CDN地址,可以看到证书信息已经生效了。
有些平台证书可能会有缓存,可以关闭浏览器后再试试。
OSS(对象存储)证书部署
进入自动部署
页面,选择OSS标签
,点击新建部署任务
按钮,如下:
填写下面的相关信息:
-
选择云厂商
-
配置 SecretId 和 SecretKey
-
选择域名
-
DNS验证通过后,点击确定
点击确认后,任务进入待部署
状态,点击部署
按钮
部署成功后,可以看到状态发生了变化,证书有效期也有了。
访问OSS地址,可以看到证书信息已经生效了。
有些平台证书可能会有缓存,可以关闭浏览器后再试试。
如何监控证书到期情况?
脚本(Bash)
以下是一个简单的Bash脚本示例,用于检查特定证书文件的到期日期,并在距离到期少于30天时发送电子邮件通知:
#!/bin/bash
# 证书文件路径
CERT_FILE="/path/to/your/certificate.crt"
# 获取证书到期日期
EXPIRY_DATE=$(openssl x509 -enddate -noout -in "$CERT_FILE" | cut -d= -f2 | tr -d ' \n')
# 将日期转换为时间戳(秒)
EXPIRY_TIMESTAMP=$(date -d "$EXPIRY_DATE" +%s)
CURRENT_TIMESTAMP=$(date +%s)
# 计算到期前的天数
DAYS_LEFT=$(( (EXPIRY_TIMESTAMP - CURRENT_TIMESTAMP) / 86400 ))
# 如果距离到期少于30天,则发送通知
if [ $DAYS_LEFT -lt 30 ]; then
echo "Certificate will expire in $DAYS_LEFT days!" | mail -s "Certificate Expiry Alert" your_email@example.com
fi
注意:上述脚本依赖于openssl和mail命令,并且可能需要根据你的系统和证书文件进行调整。
使用Httpsok
注意:可以配置你的微信公众号或其他通知服务与 httpsok 集成,以便在证书即将到期时接收通知。
总结
整个操作过程非常简单,方便,新手朋友也不用担心,都能轻松搞定。
总结来说,httpsok 是一个功能强大且易于使用的 HTTPS 证书自动续签工具。通过简单的安装和配置,你可以轻松实现 Nginx 或 OpenResty 服务器上 SSL 证书的自动续签,确保网站的安全和稳定。
👍 如果你喜欢这篇文章,请点赞并分享给你的朋友!
公众号读者专属技术群
构建高质量的技术交流社群,欢迎从事后端开发、运维技术进群(备注岗位,已在技术交流群的请勿重复添加微信好友)。主要以技术交流、内推、行业探讨为主,请文明发言。广告人士勿入,切勿轻信私聊,防止被骗。
扫码加我好友,拉你进群
PS:因为公众号平台更改了推送规则,如果不想错过内容,记得读完点一下“在看”,加个“星标”,这样每次新文章推送才会第一时间出现在你的订阅列表里。点“在看”支持我们吧!