前提

为了给个人博客提速,全部静态资源放到云上的对象存储中,并且加了CDN,耗费了不少RMB。新申请的域名也备案通过了,但是SSL证书一般需要按年付款,看了下「鹅云」上最便宜的泛域名证书也裤头一紧:

毕竟至少是一年一付,金额也不算少(4块钱一天),感觉钱包压力有点大。于是通过多种搜索方式,找到了一种可行的白piao泛域名SSL证书的方案,并且应用于已经备案好的个人博客域名上。最终子域名可以通过HTTPS协议访问,效果如左下的图:

那么开始发车!

本文只适用于在鹅云上备案、解析的域名,已经把成功把HTTPS应用于鹅云的CDN,其他云厂商没有进行试验,有兴趣的伙伴可以自行按照下文的思路重演。

安装ACME

目前使用量最大的免费SSL证书就是Let’s Encrypt,自2018-03开始,Let’s Encrypt官方发布上线了免费的SSL泛域名证书,目前通过DNS方式获取比较快,国内可以通过鹅云的DNSPod域名API或者猫云域名API自动签发Let’s Encrypt泛域名证书。因为鹅云使用的就是DNSPod域名,并且鹅云和DNSPod的账号是打通的,可以使用wx直接扫码登录。下文需要对鹅云和DNSPod进行操作,为了简化证书申请过程,需要提前安装acme.sh。acme.sh实现了acme协议,可以从Let’s Encrypt生成免费的证书,自动创建cron任务, 每天零点自动检测所有的证书,如果发现证书快过期了,需要更新,则acme.sh会自动更新证书,安装过程不会污染已有的系统任何功能和文件,所有的修改都限制在安装目录中。

先进行依赖下载和更新。如果服务器是CentOS系统,使用下面的命令:

yum update && yum install curl -y && yum install cron -y && yum install socat -y

如果服务器是Debian/Ubuntu系统,则使用下面的命令:

apt-get update && apt-get install curl -y && apt-get install cron -y && apt-get install socat -y

接着使用下面的命令安装acme.sh

curl https://get.acme.sh | sh

如果控制台输出:

.....
Good, bash is found, so change the shebang to use....
OK
Install success!

说明acme.sh安装成功。

注册并配置DNSPod的秘钥

如果使用了鹅云的服务,直接wx扫码就可以登录DNSPod,否则需要注册绑定。登录之后,点击账号中心的「密钥管理」

然后命名并且创建一个密钥:

记得要保存好秘钥的IDToken,后面的步骤需要用到这两个配置。

申请证书

申请好DNSPod的秘钥,得到IDToken之后,在服务器的环境变量中添加这两个值,执行命令:

export DP_Id='你的ID'
export DP_Key='你的Token'

例如:

export DP_Id='123456'
export DP_Key='xxxyyyzzz'

接着使用acme.sh申请签发证书,执行命令:

~/.acme.sh/acme.sh --issue --dns dns_dp -d throwable.club -d *.throwable.club

这里throwable.club是笔者的博客域名,如果需要颁发你自己的域名的SSL证书,这里替换为你的域名即可。接着静静等待acme.sh的脚本程序执行完毕,如果过程中没有发生其他意外,那么证书申请成功后的控制台日志如下:

证书文件会自动存放在/root/.acme.sh/域名目录下,例如/root/.acme.sh/throwable.club目录。查看/root/.acme.sh/throwable.club目录的内容:

其中,fullchain.cer就是证书文件内容,而throwable.club.key就是证书的私钥」。然后在鹅云的CDNHTTPS配置中指定一下证书的配置即可:

提交后,CDN会重新部署,数分钟之后就会生效。最后注意一下:

  • 申请下来的泛域名SSL免费证书有效期只有3个月,但是acme.sh每晚零点会自动检测证书的有效期并且进行续期。

  • 目前鹅云上的CDN如果使用了Let’s Encrypt的证书,暂时不支持自动续期,需要手动续期,也就是每隔三个月要把/root/.acme.sh/域名目录下的fullchain.cer域名.key的内容更新到CDN配置中提交刷新一下。

小结

Just enjoy yourself.

参考资料:

  • https://github.com/acmesh-official/acme.sh

  • 互联网中的资料

(本文完 c-1-d e-a-20200814)

推荐:

主流Java进阶技术(学习资料分享)

PS:因为公众号平台更改了推送规则,如果不想错过内容,记得读完点一下“在看”,加个“星标”,这样每次新文章推送才会第一时间出现在你的订阅列表里。点“在看”支持我们吧!

如何白嫖一个免费的泛域名SSL证书相关推荐

  1. 为 KubeSphere 集群启用免费的泛域名 SSL 证书并实现证书自动更新和分发

    作者:scwang18,主要负责技术架构,在容器云方向颇有研究. 前言 KubeSphere 集群默认安装的证书是自签发证书,浏览器访问访问会发出安全提醒.本文记录了利用 let's encrytp ...

  2. 河南泛域名SSL证书分类

    我们都知道网站使用http传输协议时用明文传输数据,对数据内容和传输对象都没有保护,容易使传输信息倍劫持.篡改.为了网站的安全和网络环境的安全,CA机构颁发了SSL证书,为http传输协议加上了安全套 ...

  3. acme申请泛域名SSL证书

    网上有太多的例子教程了,在这里只做一个简单的记录以便自己方便查询. 以下以阿里云为例 1. 登录阿里云管理后台创建Accesskey,记录Accesskey ID和Access Key Secret以 ...

  4. Thawte的单域名SSL证书和泛域名SSL证书

    Thawte是存在时间比较长的SSL证书品牌,目前已经是Digicert旗下的子品牌,根证书也是Digicert.Thawte旗下的SSL证书产品有单域名SSL数字证书也有泛域名SSL数字证书,今天随 ...

  5. 申请泛域名SSL证书

    ​泛域名SSL证书具备保护主域名及下一级无限制的子域名使用,申请泛域名SSL证书主要使用DV类型为主,对于部分金融单位还会用OV类型,但两者使用功能相同,区别不大,主要OV会证书打开详细中会显示单位名 ...

  6. GlobalSign的泛域名SSL证书

    GlobalSign是成立时间比较久的CA颁发机构之一,旗下的SSL证书拥有SHA256.ECC等加密算法,能够根据网站需求为网站提供信息加密服务.GlobalSign旗下还有一个子品牌--Alpha ...

  7. 通配符SSL证书 通配符HTTPS证书特点 泛域名SSL证书是什么

    以下文章由便宜SSL数字证书编写 一.通配符SSL证书介绍 通配符证书通配符 SSL 又叫泛域名证书,支持一个域名以及该域名所有下一级子域名.这样域名有证书加密传输的安全链接,形成了https加密链接 ...

  8. 泛域名ssl证书,sectigo便宜通配符证书普及计划

    2022年3月1日起,SSLDUN深度合作Sectigo,推出通配符ssl证书普及计划,DV通配符500元,OV通配符证书1390元 Sectigo Positivessl DV通配符五百元,初次申请 ...

  9. Let's Encrypt泛域名SSL证书申请

    操作系统:CentOS 7 github:https://github.com/Neilpang/acme.sh 有中文说明: https://github.com/Neilpang/acme.sh ...

  10. 学校等企事业单位通配符证书,通配符ov证书,泛域名ssl证书,ov通配符ssl证书

    通配符证书又称泛域名证书,可以实现域名下主域名和所有二级域名https 通配符SSL证书分为DV证书(域名验证型)和OV证书(组织验证型)之分 DV证书:只需验证网站域名所有权的SSL证书,认证较为简 ...

最新文章

  1. yum clean all之后出错_“之后”英语的4种表达方式?
  2. Lua string库整理
  3. 用Hadoop进行分布式并行编程
  4. 音频处理五:(音频的FFT计算)
  5. boost::posix_time和boost::date_time杂项的测试程序
  6. spark on yarn的未解之谜
  7. 【poj2114】点分治(离线)
  8. lintcode 627 最长回文串Python版本
  9. Mosquitto安装配置websockets
  10. 软件生命周期是指什么?
  11. linux bzip指定名称,bzip2命令_Linux bzip2 命令用法详解:将文件压缩成bz2格式
  12. Android PackageInstaller 静默安装的实现(附源码)
  13. ssh 工具 socket 10106 连接不上
  14. Android仿网络直播弹幕功能的实现
  15. 【UGUI】横向与纵向布局组件
  16. 图数据库JanusGraph实战[6]: JanusGraph+HBase+ElasticSearch的环境搭建
  17. 图的无权最短路径算法
  18. 马化腾对C语言的重视
  19. 应用软件 故障隔离_隔离软件工程师生命中的一天
  20. #分治#poj 2083 Fractal

热门文章

  1. 又一个程序员倒下-程序员防猝死指南
  2. Python实现爬取腾讯招聘网岗位信息
  3. 怎样在Mac上为 Apple ID 设置双重认证?
  4. 3. 工业大数据的创新价值
  5. 开源社区ECE:Elastic认证考试复盘总结134贴
  6. 审计一波appcms-持续更新。
  7. 执教《送给盲婆婆的蝈蝈》有感
  8. 【基础知识】~ 锁存器/触发器、寄存器
  9. 嵌入式数据库和数据库服务器的区别
  10. 结构方程模型中的R方改变量怎么求?