手把手带你免费部署https

本文详细介绍了HTTPS的作用,如何申请阿里云免费SSL证书,包括DNS验证步骤,并指导读者如何在Nginx上部署HTTPS,确保数据传输的安全性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录:

  1. https概述
  2. 申请免费ssl证书流程
  3. 部署https

1、https概述

HTTP

HTTP(HyperText Transfer Protocol:超文本传输协议)是一种用于分布式、协作式和超媒体信息系统的应用层协议。 简单来说就是一种发布和接收 HTML 页面的方法,被用于在 Web 浏览器和网站服务器之间传递信息。

HTTP 默认工作在 TCP 协议 80 端口,用户访问网站 http:// 打头的都是标准 HTTP 服务。

HTTP 协议以明文方式发送内容,不提供任何方式的数据加密,如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读懂其中的信息,因此,HTTP协议不适合传输一些敏感信息,比如:信用卡号、密码等支付信息。

HTTPS

HTTPS(Hypertext Transfer Protocol Secure:超文本传输安全协议)是一种透过计算机网络进行安全通信的传输协议。HTTPS 经由 HTTP 进行通信,但利用 SSL/TLS 来加密数据包。HTTPS 开发的主要目的,是提供对网站服务器的身份认证,保护交换数据的隐私与完整性。

HTTPS 默认工作在 TCP 协议443端口,它的工作流程一般如以下方式:

  • TCP 三次同步握手
  • 客户端验证服务器数字证书
  • DH 算法协商对称加密算法的密钥、hash 算法的密钥
  • SSL 安全加密隧道协商完成
  • 网页以加密的方式传输,用协商的对称加密算法和密钥加密,保证数据机密性;用协商的hash算法进行数据完整性保护,保证数据不被篡改。

HTTP 由于是明⽂传输,所谓的明⽂,就是说客户端与服务端通信的信息都是⾁眼可⻅的,随意使⽤⼀个抓包⼯具

都可以截获通信的内容。

所以安全上存在以下三个⻛险:

  • 窃听⻛险,⽐如通信链路上可以获取通信内容,⽤户号容易没。
  • 篡改⻛险,⽐如强制植⼊垃圾⼴告,视觉污染,⽤户眼容易瞎。
  • 冒充⻛险,⽐如冒充淘宝⽹站,⽤户钱容易没。

HTTPS 在 HTTP 与 TCP 层之间加⼊了 TLS 协议,来解决上述的⻛险。

附图:

手把手带你免费部署https

SSL(Secure Socket Layer,安全套接字层):1994年为 Netscape 所研发,SSL 协议位于 TCP/IP 协议与各种应用层协议之间,为数据通讯提供安全支持。

TLS(Transport Layer Security,传输层安全):其前身是 SSL,它最初的几个版本(SSL 1.0、SSL 2.0、SSL 3.0)由网景公司开发,1999年从 3.1 开始被 IETF 标准化并改名,发展至今已经有 TLS 1.0、TLS 1.1、TLS 1.2 三个版本。SSL3.0和TLS1.0由于存在安全漏洞,已经很少被使用到。TLS 1.3 改动会比较大,目前还在草案阶段,目前使用最广泛的是TLS 1.1、TLS 1.2。

故推荐有站点均部署https。

2、申请免费ssl证书流程

这里以阿里云申请免费ssl证书为例子:

官方教程:
https://help.aliyun.com/document_detail/156645.html?spm=5176.7968328.J_7614544130.4.5e9765c3wW8200

申请免费DV试用证书地址:

https://common-buy.aliyun.com/?spm=a2c4g.11186623.2.7.2f917af30D0g5Q&commodityCode=cas_dv_public_cn&request=%7B%22product%22:%22cert_product%22,%22domain%22:%22all%22,%22productCode%22:%22symantec-dv-1-starter%22%7D

附图:

手把手带你免费部署https

流程:

(1)选择免费证书–创建证书

(2)证书申请:

证书购买后,还需进行证书申请,

这里特别注意:域名验证方式,一般有文件验证、dns验证两种,

一般推荐进行dns验证(根据提示,在域名解析界面添加TXT记录即可)。

等待验证通过后,ssl证书就颁发了。一般等待10分钟的样子。

手把手带你免费部署https

(3)证书下载:

根据您的网站web类型 进行下载,比如您的web 是nginx 那么就下载nginx ssl证书

下面以nginx 为例:

手把手带你免费部署https

3、部署https

登录到自己服务器,找到nginx配置文件:一般是修改:/nginx/conf/nginx.conf(根据自己nginx配置寻找)

配置文件nginx.conf找到https 页面

手把手带你免费部署https

主要将下述两段路径,替换为自己ssl证书的路径。

自行将证书上传到服务器某个目录下面,比如我上传到/home/nginx/conf/cert/目录下面。

ssl_certificate /home/nginx/conf/cert/xxx.cn.pem;
ssl_certificate_key /home/nginx/conf/cert/xxx.cn.key;

然后在系统防火墙或安全组放行443端口,然后重启nginx服务。这样https就部署好了。

点击《小锁》就可以看到ssl 证书信息了。

附图:

手把手带你免费部署https

注意:web浏览器默认是http协议,故要直接访问到https网站还需要设置301跳转

nginx 301规则如下:

server {

listen 80;

server_name abc.com;

rewrite ^(.*) https://www.abc.com$1 permanent; #这段就是需要添加的,abc.com对应修改为您自己的域名

}

这样恭喜你,就已经部署好https了。

手把手带你免费部署https

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值