免费HTTPS证书配置指南,亲测有效!

为什么要使用HTTPS证书

使用HTTPS证书非常重要,以下是几个关键原因:

  • 加密通信

HTTPS在HTTP的基础上加入了SSL/TLS协议,为数据传输提供了加密功能。这意味着所有从用户浏览器到服务器之间的信息交换都是加密的,无法被第三方轻易解读,确保了数据的机密性和安全性。

  • 身份验证

HTTPS证书帮助网站向访问者证明其身份,确保用户访问的是他们想要访问的网站,而不是一个假冒的或欺诈性的网站。这对于防止“中间人攻击”尤其重要。

  • 提升信任度

对于企业用户来说,使用OV(组织验证)或EV(扩展验证)SSL证书可以更加提升网站的可信度,EV SSL证书甚至可以在浏览器地址栏显示企业名称,有利于企业品牌的宣传和建立用户的信任感。

  • 提高搜索引擎排名

搜索引擎如谷歌已经表明,HTTPS是其排名算法中的一个正面因素。因此,使用HTTPS证书的网站可能会在搜索结果中获得更好的位置。

  • 遵守法规要求

某些地区的法律法规要求网站必须使用HTTPS来保护用户数据的安全,尤其是在处理敏感信息(如信用卡信息、个人身份信息等)时。

  • 防止内容篡改

HTTPS还提供了数据完整性保护,确保数据在传输过程中没有被篡改。

  • 提升品牌形象

对于现代互联网用户来说,看到一个网站使用HTTPS已经成为安全的标志。不使用HTTPS的网站可能会让用户感到不安全,从而影响品牌形象。看到HTTS有这么多用处,没有拥抱HTTPS的网站赶紧武装起来吧。

前提条件

配置https证书前,需要做如下准备:

  • 域名

首先申请一个域名,然后做域名备案,这些各大云厂商都支持,购买域名并做备案即可。

  • 服务器

购买一台云服务器,并绑定公网IP,使得外网可以访问,一般情况下,在各大云厂商购买ECS服务器的时候附带购买弹性公网IP(可选择按带宽或流量计费)。

  • 域名解析

有了域名和服务器之后,需要做域名解析,将指定的域名请求解析到主机服务器做一个映射,这样访问域名的时候就会请求到这台服务器。

以上这些不清楚的可以自行搜索解决,然后我们在服务器上安装软件部署应用就可以对外提供服务了。这里我以CentOS7系统Nginx Web服务器讲解如何配置Let’s Encrypt免费的HTTS证书。

Nginx可在https://nginx.org/en/download.html网站下载合适的版本,安装教程网上很多,这里不再赘述了,但是安装的时候注意,默认安装配置是不支持https 、ssl的,所以安装的时候要添加支持,可以使用命令./configure --with-http_ssl_module,再执行make&& make install进行安装。否则后面配置Let’s Encrypt证书的时候他会检测nginx对https和ssl支持情况,不支持的话会报错

Certbot方式一站式安装Let’s Encrypt HTTPS证书

Certbot方式安装非常简单,根据提示一直下一步就可以自动完成,当然也可以生成证书后手工安装,图个方便我们就自动一站式完成配置吧。

官网地址:https://certbot.eff.org免费HTTPS证书配置指南,亲测有效!进入官网后,在红框处软件选择Nginx,系统选择CentOS 7即可。

选择后就会跳转到对应的配置教程页面。免费HTTPS证书配置指南,亲测有效!这里列的就是安装要求,比如必须要支持能用命令行终端SSH登录到服务器,并且服务器上的80端口要开着。

snapd安装

官方是推荐通过snapd安装Certbot,所以先安装snapd。免费HTTPS证书配置指南,亲测有效!点击install snapd跳转到snapd的安装页,链接:https://snapcraft.io/docs/installing-snapd。免费HTTPS证书配置指南,亲测有效!直接跳过pre-installed,点击CentOS这个链接正式进入snap的安装。

EPEL安装

因为我是CentOS7,点开“Adding EPEL to CentOS 7”执行命令。免费HTTPS证书配置指南,亲测有效!

sudo yum install epel-release

等待下载安装,没有报错的话,最后会输出“Complete!”,代表安装成功。

snapd安装

执行命令:

sudo yum install snapd

等待下载安装,没有报错的话,最后会输出“Complete!”,代表安装成功。

  • snapd安装完成后,需要启用snapd连接socket。
sudo systemctl enable --now snapd.socket
  • snap建立软连接。
sudo ln -s /var/lib/snapd/snap /snap

输入“snap –help”命令,如果正常输出用法信息则snap安装成功。

Certbot安装

安装前移除已有的Certbot安装包

sudo yum remove certbot

安装Certbot

执行命令:

sudo snap install --classic certbot

如果报错“error: too early for operation, device not yet seeded or device model not acknowledged”,则可以先退出再重新登录一次(或者重启服务器)即可。

Certbot安装完成后,建立一个certbot命令软连接。

sudo ln -s /snap/bin/certbot /usr/bin/certbot

一站式http证书安装

首先确保服务器上的nginx是启动的,然后执行命令:

sudo certbot --nginx

如果报错如下:免费HTTPS证书配置指南,亲测有效!说明certbot没有找到nginx配置文件,certbot默认找“/etc/nginx/nginx.conf”,所以可以把nginx安装目录下的所有文件可以复制到“/etc/nginx”这个目录下(如果没有这个目录需要手工创建)即可。

nginx重新启动,带配置文件“nginx -c /etc/nginx/nginx.conf”。然后certbot他会检测nginx的配置,找出有多少个域名需要配置https。免费HTTPS证书配置指南,亲测有效!直接回车就是全部域名都要配置https,可以单个选择,也可以选择多个(逗号或空格分隔)。接下来会让输入邮箱用户接受通知,填自己的邮箱即可,剩下的基本都是回车即可,最终完成https证书的生成,certbot会自动修改/etc/nginx/nginx.conf配置文件的内容,加入对443端口的监听和ssl证书的配置,如下:免费HTTPS证书配置指南,亲测有效!这个就是certbot自动修改的,并且加入了注释“# managed by Certbot”。

免费HTTPS证书配置指南,亲测有效!对之前自己配置的监听80端口,他会自动修改成301重定向到https。

至此https配置完成,需要重新reload一下nginx才生效,执行命令“nginx -s reload”访问一下域名看看,小锁图标加上了,浏览器报告连接是安全的。免费HTTPS证书配置指南,亲测有效!

续期

免费的证书有效期是3个月,时间到之后证书就无效了,所以需要续期,同时certbot也贴心的给了自动续期的方案。只需要执行命令:

sudo certbot renew --dry-run

他会自动生成定时任务,文档中说是可能在以下几个位置:

  • /etc/crontab/
  • /etc/cron./
  • systemctl list-timers

我找了一下发现在这里,续期的这个目前没测过,等证书到期后看是否会自动续吧。免费HTTPS证书配置指南,亲测有效!打完收工!

总结

本篇只是简单的介绍了下关于免费https证书的配置,可以作为学习用途,商业使用时一般都会购买正式的https证书,由运维去配置,原理和过程基本是一样的。

欢迎关注公众号,欢迎分享、点赞、在看

免费HTTPS证书配置指南,亲测有效!



原文始发于微信公众号(小新成长之路):免费HTTPS证书配置指南,亲测有效!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/238248.html

(0)
小半的头像小半

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!