Hexo博客SSL证书到期,该如何免费续期更换?

简介: Hexo博客SSL证书到期,该如何免费续期更换?

Hello 各位好,我是小豪。连续两年差不多这个时候,都会收到腾讯云☁️发来的一封邮件,告知我博客所用的 SSL 证书快到期了,让我提前续期证书,或是重新申请证书,以免影响到我的业务。15084b6872817983b261af9d47589260_640_wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpg说影响到我的业务,其实也没那么夸张,毕竟我的博客没法赚钱,反而还要倒贴钱——每年租用服务器的费用、每个月的图床支出……对不能通过博客赚到钱的人来说,搭建博客反而是一种负担。SSL 证书过期带来的直接影响,就是当有人打开网站时,浏览器会出现类似下图的提示,且网友不能看到网站的内容,必须得点击左下角的「高级」,再点击弹出的「继续访问」,才能访问网站。因为增加了这一步操作,且考虑到不少人一看到这个风险提示就会下意识地关掉网页,因此对于业务性质的网站,SSL 证书过期会导致网站的 UV 极速下滑。327dde450480627bebb66a8558ef0317_640_wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpg前面的铺垫简单解释了 SSL 证书的作用,接下来就以我的 Hexo 博客,说下更换 SSL 证书的步骤:

在腾讯云后台免费申请 SSL 证书

我的 Hexo 博客用的是腾讯云的服务器,因此这里需要去到腾讯云服务器的后台,其他云服务厂商的操作应该也是类似的。打开腾讯云官网,点击顶部导航栏「产品」,在下方的搜索框输入 SSL,点击下方返回的 SSL 证书。1fa41881790e497da4a123933b1c29ce_640_wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpg点击下方的「产品控制台」,进入 SSL 证书管理后台。b189c2219de665c0ad258ada8dbfb91f_640_wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpg如果你和我的情况一样,之前申请的 SSL 证书快到期了,后台会有一个「快速续期」的选项,点击进入新的页面。6f916794322159e104589a85180fb67f_640_wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpg打开的页面会让我们选择 SSL 证书的签发机构,这里我选择的是免费证书,签发机构也只有一家——亚洲诚信。如果是首次申请 SSL 证书,需要填入「证书绑定域名」,域名验证方式选择「自动DNS验证」即可,输入你的邮箱,最后点击下方的「提交」按钮。稍等一小会,没有遇到其他问题的话,它很快就会通过我们的申请。4d50f2c2bf0e12062b30c23073db7264_640_wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpgSSL 证书审核通过后,点击腾讯云右上角的「站内信」,打开腾讯云给我们发的邮件,如下图,点击下方的蓝色按钮,前往证书管理控制台。9c9bc8bb63385b19fa5232d24671b07f_640_wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpg在打开的页面,找到下图的「手动部署」,点击蓝色的超链接,下载证书文件。6dc48dbed54ec45b5aa0592bc09b6d31_640_wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpg在 SSL 证书的下载页面,还需要根据服务器(后端服务)使用的语言,来选择要下载的文件。这里就要根据自己博客的具体情况来选啦,我的 Hexo 博客服务器端使用的是 Nginx,因此这里就点击 Nginx 右侧的「下载」按钮。f17593aca0bcb3bbfd009d6e8067b50b_640_wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpg下载下来会得到一个安装包,解压安装包,里面会有 4 个文件,但其实我们只需要用到其中的 2 个文件,分别是以 .crt.key 为后缀的文件。57e531819f1f67059a8a4cb81511bc0e_640_wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpg

上传 SSL 证书前的准备

这一步有一点点麻烦,我在折腾的过程中也是卡在这一步了。

要将电脑本地的 SSL 证书文件上传到远端服务器,有多种方式,稍微硬核一点的方法是通过电脑的终端上传,但因为我不习惯使用命令行,而且缺少了图形化的界面,这会让我操作起来有点不踏实,生怕把原本正常的东西搞砸了🤦‍♂️因此,这里我用的是一个叫 Royal TSX 的工具,我有点难说清这是一款什么样的软件,因此这个任务交给 Notion AI 来解释:

Royal TSX 是一款跨平台的远程桌面管理软件,支持 macOS、Windows、iOS 和 Android 系统。它可以管理多种远程桌面协议,包括 Microsoft Remote Desktop Protocol (RDP)、Apple Remote Desktop (ARD)、VNC、SSH 和 Telnet 等。 通过 Royal TSX,用户可以轻松地连接和管理多个远程计算机和服务器,以及执行各种远程管理任务和操作,如文件传输、终端访问、进程管理和脚本执行等。

0f895d4fd1b6af665723828e6a21295c_640_wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpgRoyal TSX 官网下载:
https://royalapps.com/ts/mac/download
简单来讲,这里会用到 Royal TSX 的 SSH 连接和文件传输(SFTP 连接)功能,将我们的电脑和远端的服务器连接起来,同时软件提供了图形化的界面,只要简单拖拽就能实现文件的上传和下载,更适合于没有计算机背景的人。首次打开 Royal TSX,首页显示的 Getting started 给我们提供了使用软件的引导:

  • 安装插件
  • 创建一个文档
  • 添加你的第一个连接

1b2665ab648f241a577c9160ef3822d7_640_wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpg前面 Notion AI 在介绍 Royal TSX 时,说它可以管理多种远程桌面协议,软件能够支持多种协议,实际上是通过安装插件来实现的,要用到哪种协议,就给软件安装相对应的插件下面以 macOS 版本的 Royal TSX 为例,点击屏幕左上角的 Royal TSX,选择 Plugins。ff9ef9e0c3026aa98224ce7fa7da8b6d_640_wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpg点击插件面板上方的 Available Plugins,找到下面两个插件——Terminal 和 File Transfer,依次点击插件右侧的 Install 按钮,安装这两个插件。安装插件之后,软件会提示重启软件,按照提示重启即可。df21af79d79f535edfa17b258b12f9b4_640_wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpg

SSH 连接

点击左上角的 File 选项卡,选择 New Document,新建一个文档,接着按下 Command + S,会弹出一个保存的窗口,可设置文档的名称,你可以自定义文档名称,也可以保持默认的文档名 Connections。bee1e10ef0b7620cf094f6a43ce89942_640_wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpg单击选中刚创建的文档 Connections,点击左下角的加号 + ,在弹出的面板,选择 Terminal,打开一个终端。9825ec37180c517b146a93c8a51c4b53_640_wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpg右击刚创建的 Terminal,选择 Properties,打开属性面板。553b97b70b474cbbcd48de79b64366dc_640_wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpg打开的属性面板如下,要填入一些信息:

  • Display Name:可以给终端起个有辨识度的名字,方便与等下要添加的「文件传输」区分开来
  • Connection Type:连接类型选择 SSH 连接,后面的 Port 为端口,保持默认的 22 即可
  • Computer Name:这里需要输入服务器的公网 IP,这个可以从腾讯云服务器的管理后台查到🔍

a152e3212c991b02d5d6c70bc21282b8_640_wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpg接着将左侧切换到 Credentials 选项卡,这里同样要更改一下默认的配置:将右侧的下拉选项更改为下图中的 Specify username and password,选择这个之后,还要在下方填入服务器的用户名和密码。服务器的用户名默认为 root,如果你没改过的话,填入 root 即可,接着再输入服务器的登录密码,如果不慎忘记了登录密码,可以到腾讯云管理后台重置密码。最后点击右下角的 Apply & Close,应用当前的设置,同时关闭设置面板。3c38db78fd041be7c8c30bc3583f7653_640_wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpg

SFTP 连接

再次选中文档 Connections,点击左下角的加号 + ,在弹出的面板,选择 File Transfer,添加文件传输。1753fac6d76ffc0e76fabd0f39caf9a4_640_wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpg和前面配置 SSH 连接一样,选中刚添加的 File Transfer 并右击,选择 Properties,打开属性面板。

  • Connection Type:连接类型选择 SFTP,端口为 22
  • Computer Name:同样是输入服务器的公网 IP

b48e58e6531a23a2fddf7c2fd9f05cc5_640_wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpg

接下来的这一步就是我在折腾的时候卡住的地方,不确定其他人到这一步会不会也会被卡住,仅作为提示。

将左侧切换到 Credentials 选项卡,你可以像前面一样,通过用户名和密码实现 SFTP 连接。4e36f5a12a2b1f47497db13e03982821_640_wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpg在上面的设置面板填入用户名和密码时,它并不会立即进行校验,而是当我们右击刚添加的「文件传输」,选择 Connect 时,它才会对我们填入的服务器用户名和密码进行校验。4391df9169f2ea37378a1d83fdda6d7e_640_wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpg在 SFTP 校验这一步,Royal TSX 给我弹出了一个错误的提示,说我输入的服务器用户名或密码有误……无法连接到远程的服务器。

如果你没有遇到这个错误提示,那下面的解决方法的部分可以直接跳过。

尝试了好几次,而且是在一位博主「老郭种树」发布的视频《【补充】Royal TSX SSH 密钥文件登录远程服务器》的帮助下,我才找到了另一种解决方法。除了通过用户名和密码,其实我们还可以通过密钥文件登录/连接到远程的服务器。关于如何生成密钥文件,操作比较复杂,可以参考上面提到的视频。

在本地生成密钥文件,同时将公钥和私钥上传到服务器的 .ssh 路径后,我们再次打开「文件传输」的属性面板,切换到 Credentials 选项卡。点击 Private Key File,切换到使用密钥文件登录的方式:将电脑本地路径 user/用户名/.ssh 下的私钥文件 id_rsa 拖拽添加到下方的 Private Key File 中,同时在下方输入生成密钥文件时所用的密码,这样就完成了密钥文件登录方式的配置。795eb784dd2965cba1a1604597ce2aa7_640_wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpg关闭设置面板,再次右击「文件传输」,选择 Connect,操作无误的话,这回就能正常连接到远端的服务器了。4391df9169f2ea37378a1d83fdda6d7e_640_wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpg

将 SSL 证书文件上传到远端服务器

完成 Royal TSX 的配置之后,接下来就是借助 Royal TSX,将本地的 SSL 证书文件上传到远端的服务器。前面我们右击「文件传输」,选择 Connect 之后,会打开下图的界面,左侧是电脑本地的文件,右侧是远端服务上存放的文件。在右侧的服务器根路径下,新建一个名为 ssl 的文件夹,进入文件夹,再创建一个名为 Nginx 的子文件夹。aa772deb80eb84d0d290f92c80fbe858_640_wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpg打开 Nginx 文件夹,将本地的 2 个证书文件拖拽上传到文件夹中。

注:这里我对上传后的两个文件进行了重命名。

d93cf6d9db24865b6e68755c870a2651_640_wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpg选中 Royal TSX 左侧的 Terminal(这里我将它重命名为「远程服务器」),选择 Connect,打开一个黑乎乎的窗口。4696c2a1e87c1b8fecc51b975d2c90fb_640_wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpg在窗口中依次输入如下命令:

cd ssl/Nginx chmod 755 penghh.crtchmod 755 penghh.key cd ../.. nginx -s reload

第 1 行命令,是进入到我们刚创建的 Nginx 文件夹中;第 2、3 行命令,是将我们刚上传的两个 SSL 文件的权限提升到 755; 第 4 行命令,是从 Nginx 文件夹返回到服务器的根路径下; 第 5 行命令是重启服务。

完成以上操作后,就算是大工告成了。此时去到浏览器,打开个人博客或网站,点击浏览器地址栏的小锁,按照下面的步骤,查看证书的截止日期,如果时长为一年,那就是换上了新的 SSL 证书啦!2a6e024d39a41ea838eebaf640bcf39a_640_wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpg对不懂技术的人,折腾起来还是有点麻烦的,但最后决定把操作过程写出来,以后跟着这个操作,心里就有谱了。好了,以上就是今天想分享的内容,希望对你有帮助。


相关文章
|
网络安全 Python
Python:获取ssl证书信息和到期时间
Python:获取ssl证书信息和到期时间
382 0
|
6天前
|
存储 监控 安全
Elasticsearch 8.X 集群 SSL 证书到期了,怎么更换?
Elasticsearch 8.X 集群 SSL 证书到期了,怎么更换?
42 3
|
10月前
|
监控 Linux 网络安全
Domain Admin域名和SSL证书过期监控到期提醒
用于解决,不同业务域名SSL证书,申请自不同的平台,到期后不能及时收到通知,导致线上访问异常,被老板责骂的问题。同时,Domain Admin也是一个轻量级监控方案,占用系统资源较少,安装包仅1.5 MB。基于Python3 + Vue3.js 技术栈实现的域名和SSL证书监测平台。支持证书:单域名证书、多域名证书、通配符证书、IP证书、自签名证书。通知渠道:支持邮件、Webhook、企业微信、钉钉、飞书等通知方式。证书部署: 单一主机部署、多主机部署、动态主机部署。的过期监控,到期提醒。
638 3
Domain Admin域名和SSL证书过期监控到期提醒
|
监控 机器人 网络安全
一个脚本实现 SSL 证书到期监控,微信通知,太强了!
一个脚本实现 SSL 证书到期监控,微信通知,太强了!
233 0
一个脚本实现 SSL 证书到期监控,微信通知,太强了!
|
负载均衡 网络安全
阿里云负载均衡ssl证书过期更换后,过一段时间又变回原来过期证书的bug的处理办法
阿里云传统负载均衡证书过期后,在负载均衡的监听页面去更换证书,更换后过一段时间证书会变回原来的证书,导致客户端https无法访问。 目前的解决办法是去负载均衡的证书管理,去删除当前过期证书,然后再去负载均衡监听页面配置证书,才不会出现变回原来的证书的问题。
阿里云负载均衡ssl证书过期更换后,过一段时间又变回原来过期证书的bug的处理办法
|
监控 JavaScript 小程序
监控:实现 SSL 证书到期,微信通知
监控:实现 SSL 证书到期,微信通知
监控:实现 SSL 证书到期,微信通知
|
域名解析 网络协议 算法
阿里云申请免费ssl证书(HTTPS) 保姆级教程
阿里云申请免费ssl证书(HTTPS) 保姆级教程,阿里云SSL免费证书在哪申请?一个阿里云账号一年可以申请20张免费SSL证书,很多同学找不到免费SSL的入口,阿小云来详细说下阿里云SSL证书免费申请入口链接以及免费SSL证书申请流程
396 0
|
6天前
|
前端开发 应用服务中间件 网络安全
nginx配置SSL证书配置https访问网站 超详细(附加配置源码+图文配置教程)
nginx配置SSL证书配置https访问网站 超详细(附加配置源码+图文配置教程)
96 0
|
6天前
|
域名解析 网络协议 应用服务中间件
阿里云SSL证书配置(HTTPS证书配置)
该内容是一个关于如何在阿里云上准备和购买SSL证书,以及如何为网站启用HTTPS的步骤指南。首先,需要注册并实名认证阿里云账号,然后在SSL证书控制台选择证书类型、品牌和时长进行购买。申请证书时填写域名信息,并进行DNS验证,这包括在阿里云域名管理板块添加解析记录。完成验证后提交审核,等待证书审核通过并下载Nginx格式的证书文件。最后,将证书配置到网站服务器以启用HTTPS。整个过程涉及账户注册、实名认证、证书购买、DNS设置和证书下载及安装。
186 0
|
6天前
|
前端开发 应用服务中间件 网络安全
http转为https,ssl证书安装及nginx配置
http转为https,ssl证书安装及nginx配置
72 1