我们相信:世界是美好的,你是我也是。平行空间的世界里面,不同版本的生活也在继续...

本篇文章的主题是:如何在宝塔面板里面,一键申请免费证书,并启用https。当然,这个功能,对于一部分用户来说,可能是有问题的。如何检测和修复,文章的末尾会给出。

苏南大叔:如何利用宝塔面板,极速申请并安装免费ssl证书? - btcn-ssl
如何利用宝塔面板,极速申请并安装免费ssl证书?(图10-1)

前言

2016年年底,各大主流浏览器都更新了https的相关策略,对于用户浏览http的网站的时候,会给予提示“不安全”。详见下面这篇文字:

这就要求,各大网站要全面升级https,国内的搜索巨头,百度已经全面启用了https,其他互联网企业也继续跟进。这不,苏南大叔也紧跟时代的步伐,启用了博客的https服务。当然,用的是免费的ssl证书,启用的过程,也是异常的简单。这就多亏了宝塔面板提供的,极其简易的ssl申请并部署的功能。

操作界面

先给出界面操作,如下:
站点属性的ssl选项卡,选择开启“let's encrypt”即可。然后剩下的就是等操作完成即可。大概一分钟以内就会操作完成。然后你的网站就顺利从http升级为https了,而且还会对http的老请求,自动跳转到https,是不是极其简单和贴心?

苏南大叔:如何利用宝塔面板,极速申请并安装免费ssl证书? - ssl_00
如何利用宝塔面板,极速申请并安装免费ssl证书?(图10-2)

苏南大叔:如何利用宝塔面板,极速申请并安装免费ssl证书? - ssl_14
如何利用宝塔面板,极速申请并安装免费ssl证书?(图10-3)

出现后面的这个界面后,就直接关闭对话框就行了。下面的“更新证书”的操作,据说是不用点击的。

操作失败解决方案

当然,对于证书申请动作,也有可能会显示操作失败。

检测的方案很简单,去看看下面这个路径“www>server>panel>certbot-auto”的文件,是否正常存在。苏南大叔的这个文件就是显示“0kb”,这就是导致“操作失败”的真正原因所在。

苏南大叔:如何利用宝塔面板,极速申请并安装免费ssl证书? - ssl_01
如何利用宝塔面板,极速申请并安装免费ssl证书?(图10-4)

苏南大叔:如何利用宝塔面板,极速申请并安装免费ssl证书? - ssl_02
如何利用宝塔面板,极速申请并安装免费ssl证书?(图10-5)

修复方法,是官方开发人员“良哥”(在官方论坛里面,签名要红牛的那个。貌似就是他了)给出的。

wget -O /www/server/panel/certbot-auto http://download.bt.cn/install/certbot-auto.init -T 5
chmod +x /www/server/panel/certbot-auto && /www/server/panel/certbot-auto -n

苏南大叔懒得打开shell界面,输入上述命令了。所以偷了个懒,把上述命令在宝塔的计划任务里面给执行了,执行完毕。又给删除了。哈哈,顺利而且成功。

苏南大叔:如何利用宝塔面板,极速申请并安装免费ssl证书? - ssl_03
如何利用宝塔面板,极速申请并安装免费ssl证书?(图10-6)

苏南大叔:如何利用宝塔面板,极速申请并安装免费ssl证书? - ssl_04
如何利用宝塔面板,极速申请并安装免费ssl证书?(图10-7)

苏南大叔:如何利用宝塔面板,极速申请并安装免费ssl证书? - ssl_06
如何利用宝塔面板,极速申请并安装免费ssl证书?(图10-8)

cert-auto脚本文件,顺利升级。查看属性,已经不是0KB了。然后再次去操作一下下,就可以顺利获取了。蛮简单的。

苏南大叔:如何利用宝塔面板,极速申请并安装免费ssl证书? - ssl_07
如何利用宝塔面板,极速申请并安装免费ssl证书?(图10-9)

上述操作的背后,隐藏着对nginx的设置的修改,敬请关注后续文章。

有关自动续期

证书的有效期是90天,90天过后,会自动续期。到时候,是不是用点击这个“更新证书”操作,就拭目以待了。

关于90天证书自动续期的问题,官方论坛里面有人提到了,希望出现个计划任务。官方开发人员回复:本来就是自动续期的。当然了,真正是否会出什么问题,90天之后才能知晓。也许,真的我们什么都不需要操作呢? https://www.bt.cn/bbs/forum.php?mod=viewthread&tid=3621&highlight=ssl

注意事项

这个操作过程中,有一点是要注意的。如果,你的站点绑定了多个域名,请千万不能像论坛里面所说的那样,先只保留一个域名,申请好ssl之后,再添加上去。如果这样操作的话,你访问新域名的http是正确的,但是访问新域名的https就会报证书错误。

解决办法是:物理删除已经申请好的ssl证书。添加好所有的域名后,再次重新申请。如果正常的话,新申请到的证书就是有多个dnsname的了。

后续补充内容

20171111补充:
目前来看的话,自动续期失败的概率蛮大的。需要大家自己记着点时间,然后自己再来面板这边主动点击操作一回。

  • 自动续期失败,似乎和宝塔的强制https的301跳有关系。
  • 每天自动运行的续期程序上也存在瑕疵。见这里:《宝塔面板在凌晨2点半的时候,到底做了什么羞羞的事?》https://newsn.net/say/bt-panel-ssh-renew.html
  • 由于自动续期是每天半夜两点半检查的。所以,苏南大叔有理由怀疑:即使正常续期,也会有点时间差是不能正常使用https的。

20170725补充:
最新版的宝塔面板,这个功能已经有所修改。首先,首推了个和别人家合作的ssl申请界面,貌似应该是个赢利点。其次,这个免费的ssl,提示“很不稳定,不好申请”,而且给了个可以选择域名,来申请ssl的界面。点滴之间,有了点商业的气息。不过,这也无可厚非。大家都是需要养家糊口的嘛...

苏南大叔:如何利用宝塔面板,极速申请并安装免费ssl证书? - baota_ssl
如何利用宝塔面板,极速申请并安装免费ssl证书?(图10-10)

结语

苏南大叔的博客里面,有很多关于宝塔面板的文章。大家如果感兴趣,可以点击这里查看:

如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。

 【福利】 腾讯云最新爆款活动!1核2G云服务器首年50元!

 【源码】本文代码片段及相关软件,请点此获取更多信息

 【绝密】秘籍文章入口,仅传授于有缘之人   https    ssl