意义

互联网巨头雅虎官方对外发布消息,承认在2014年的一次黑客袭击中,至少5亿用户的数据信息遭窃。此次事件让我们再次意识到网站安全的重要性,网站加密防护的必要性。

因为http协议是不加密的,所以用户使用的时候,并不安全。https是加密的,能够保护用户的信息。但是现在有一个问题:用户习惯直接输入域名,会直接使用HTTP协议。那么我们在云端需要做一个转换。

本实验使用负载均衡配置监听,利用Nginx实现HTTP请求向HTTPS请求的转化,从而完成HTTP和HTTPS的混合访问。

HTTP请求转化为HTTPS请求架构图

补充:HTTPS和HTTP

HTTP 由于是明文传输,所以安全上存在以下三个风险:

  • 窃听风险,比如通信链路上可以获取通信内容,用户号容易没。
  • 篡改风险,比如强制植入垃圾广告,视觉污染,用户眼容易瞎。
  • 冒充风险,比如冒充淘宝网站,用户钱容易没。

HTTPS是增加了SSL/TLS

HTTPS与HTTP

实验步奏

配置监听

image-20230617140138698

添加 负载均衡 的 HTTPS 协议的监听。

基本配置 页面,配置如下信息:

  • 前端协议[端口]:选择 HTTPS ,并填写端口号为 443

添加组

image-20230617140459241

添加 负载均衡 的 HTTP 协议的监听

  • 前端协议[端口]:选择 HTTP ,并填写端口号为 80

后端服务器组,选择默认服务器组

  • 后端协议[端口]:默认使用 HTTP ,填写端口号为 88 ;
  • 其余配置信息保持默认,完成如上配置后,点击 下一步

说明:本实验中使用 88 端口进行判定和转发的,在真实的工作环境中,用户请根据实际情况设置端口信息。

验证监听

验证 HTTP 协议监听

在浏览器中新建一个页面,输入 实验资源 提供的 负载均衡IP地址 。此时,页面提示 502 错误。证明 HTTP 协议监听开启,但是无法正常访问网站。(注意不是ECS的地址,而是负载均衡的地址)

验证 HTTPS 协议监听

1)在浏览器中,新建页面,并输入 https://xxx.xxx.xxx.xxx (其中 xxx.xxx.xxx.xxx实验资源 提供的 负载均衡IP地址 )。

注意:必须输入 https:// ,否则会出现访问错误。

HTTP请求转化为HTTPS请求

通过重定向的方式将来自 HTTP 请求转发到 HTTPS。直接修改nginx的配置。

Nginx配置

进入ECS实例1

修改 Nginx 配置文件:将所有 88 端口请求,都转发到负载均衡的 HTTPS 协议的 IP 访问地址

1)输入如下命令,进入 Nginx 配置文件的编辑页面。

1
vim /etc/nginx/nginx.conf

2)键盘输入 i ,进入 编辑 模式

3)清空 85 行到 94 行的注释 # ,如下图所示:

4)修改 rewrite 的参数信息,将 xxx.xxx.xxx.xxx 替换为 实验资源 提供的 负载均衡IP地址

5)保存并且退出。

6)重启 Nginx 服务器:

1
service nginx restart

ECS实例2同样操作。

证书购买和上传

因为浏览器会有提示,要解决这个问题,必须购买证书并非上传,请自行百度或者查看原文链接。

原文:http和https混合访问

感谢:小林-图解网络