欢迎关注大数据技术架构与案例微信公众号:过往记忆大数据
过往记忆博客公众号iteblog_hadoop
欢迎关注微信公众号:
过往记忆大数据

续签Let's Encrypt的HTTPS证书

  本博客的《如何申请免费好用的HTTPS证书Let's Encrypt》《在Nginx中使用Let's Encrypt免费证书配置HTTPS》文章分别介绍了如何申请Let's Encrypt的HTTPS证书和如何在nginx里面配置Let's Encrypt的HTTPS证书。但是Let's Encrypt HTTPS证书的有效期只有90天:


如果想及时了解Spark、Hadoop或者Hbase相关的文章,欢迎关注微信公共帐号:iteblog_hadoop

到期之后我们需要续签,不过值得高兴的是,我们可以程序自动搞定这些事,我们先在nginx里面配置如下的信息:

location ^~ /.well-known/acme-challenge/ {
        alias /date/web/iteblogssl/www/challenges/;
        try_files $uri =404;
}

这个就是《如何申请免费好用的HTTPS证书Let's Encrypt》文章中配置验证服务的时候用到的nginx配置。设置完上面的配置之后,我们编写一个sh脚本,用于自动申请签证:

#!/bin/bash

cd /data/web/ssl/
python acme_tiny.py --account-key account.key --csr domain.csr --acme-dir /date/web/iteblogssl/www/challenges/ > signed.crt
wget -O - https://letsencrypt.org/certs/lets-encrypt-x3-cross-signed.pem > intermediate.pem
cat signed.crt intermediate.pem > chained.pem
service nginx reload

将上面的文件保存到iteblog.sh文件里面,并赋予执行权限:

iteblog$ chmod 777 iteblog.sh

然后加到到操作系统的crontab里面,如下:

iteblog$ sudo crontab -e
 0 0 2 * * /bash/sh /data/web/ssl/iteblog.sh > /dev/null 2>&1

上面定时任务将每两月执行iteblog.sh脚本来自动申请Let's Encrypt证书。更新的时候可以看到日志文件里面有如下HTTP请求:

172.68.34.72 - - [05/Aug/2016:10:23:11 +0800] "GET /.well-known/acme-challenge/BM8Te6qjCwgBS0GJI7QDqvfdPNj-ZsWlDFfJixC4_Ak HTTP/1.1" 200 87 "-" "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"

好了,自动化程序完成。

本博客文章除特别声明,全部都是原创!
原创文章版权归过往记忆大数据(过往记忆)所有,未经许可不得转载。
本文链接: 【续签Let's Encrypt的HTTPS证书】(https://www.iteblog.com/archives/1736.html)
喜欢 (4)
分享 (0)
发表我的评论
取消评论

表情
本博客评论系统带有自动识别垃圾评论功能,请写一些有意义的评论,谢谢!