写点什么

Nginx 部署的虚拟主机如何使用 Let's Encrypt 来进行加密 https

作者:HoneyMoose
  • 2022 年 7 月 09 日
  • 本文字数:731 字

    阅读完需:约 2 分钟

HTTPS 是现在网站的标配了,很多服务都是必须使用 https,如果你不使用的话,浏览器可能就不会对你非常友好了。

如果你不想使用商业的 CA 秘钥的话,你可以使用 Let’s Encrypt 来进行加密。

使用 Let’s Encrypt 唯一不好的地方就是每 3 个月要更新一次,当然你也可以使用自动的更新来处理就好了。

我们需要通过安装插件来实现:

  • 获得 SSL 加密需要的 pem 秘钥。

  • 设置 certbot 能自动更新秘钥。

需要前提条件

已经安装好了 Nginx 并且配置好了虚拟主机安装好 python3-certbot-nginx 插件

对 Nginx 虚拟主机的配置方法我们就不详细说了,你可以自己搜索下进行配置。

安装 python3-certbot-nginx 插件

安装的命令非常简单:

执行下面的命令就可以了:sudo dnf install python3-certbot-nginx 需要注意的是,我们这个命令是带有 nginx 插件的。

还有一个官方的是不带有插件的,不建议装那个,因为非常不好配。

获得 pem 秘钥

运行下面的命令 sudo certbot certonly --nginx,需要后面添加 nginx 参数才可以了。

通过下面的寂寞我们可以看到,这个工具将会检测到你的本地服务器上有几个虚拟主机。

然后你需要选择你需要的一个来进行安装。

在安装成功后,会生成我们需要的 pem 秘钥。



配置你的虚拟主机

找打你的虚拟主机文件,然后将生成的秘钥配置上去就可以了。

例如我们的虚拟主机配置:

 


我们首先在上面配置了 80 端口的重定向,然后将生成的 2 个秘钥文件的指定位置配置上去就行了。

然后重启 Nginx 服务器,然后检查你的网站的 HTTPS 情况。

检查网站 HTTPS 情况

可以使用一些第三方的网站来进行检查,也可以直接使用浏览器来检查。

 


主要看看网站有没有正常的重定向,和 SSL 证书的过期时间。

上面的证书看起来签发的是泛域名。

https://www.ossez.com/t/nginx-lets-encrypt-https/14034

用户头像

HoneyMoose

关注

还未添加个人签名 2021.03.06 加入

还未添加个人简介

评论

发布
暂无评论
Nginx 部署的虚拟主机如何使用 Let's Encrypt 来进行加密 https_HoneyMoose_InfoQ写作社区