一:HTTPS

1.HTTPS简介
  1. 为什么需要使用HTTPS,因为HTTP不安全,当我们使用http网站时,会遭到劫持和篡改,如果采用https协议,那么数据在传输过程中是加密的,所以黑客无法窃取或者篡改数据报文信息,同时也避免网站传输时信息泄露。
  2. 那么我们在实现https时,需要了解ssl协议,但我们现在使用的更多的是TLS加密协议。
  3. 那么TLS是怎么保证明文消息被加密的呢?在OSI七层模型中,应用层是http协议,那么在应用层协议之下,我们的表示层,是ssl协议所发挥作用的一层,他通过(握手、交换秘钥、告警、加密)等方式,是应用层http协议没有感知的情况下做到了数据的安全加密

  • https,即http安全连接,可以说是http协议的安全版。众所周知,我们在互联网上浏览网站,一般都是使用的http协议(也就是前面的http),默认情况下数据是明文传送的,这些数据在传输过程中都可能会被捕获和窃听,因此是不安全的。https是互联网服务的标准加密通讯方案,就是为了满足对安全性要求比较高的用户而设计的。

  • HTTPS与HTTP区别详解:https://www.cnblogs.com/goOJBK/p/15778411.html

二:模拟网站劫持

1.正常的页面(web01)

  1. 1.切换路径
  2. cd opt
  3. 2.创建文件夹
  4. mkdir code
  5. 3.编写页面文件配置
  6. [root@web01 ~]# vim /code/index.html
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  5. <title>学生信息注册页面</title>
  6. </head>
  7. <body>
  8. <h3 align="center">学生信息注册</h3>
  9. <form name="stu"action="">
  10. <table>
  11. <tr><td>姓名:</td><td><input type="text"name="stuName"/></td></tr>
  12. <tr><td>性别:</td>
  13. <td><input type="radio"name="stuSex"checked="checked">
  14. <input type="radio"name="stuSex">
  15. </td>
  16. </tr>
  17. <tr><td>出生日期</td>
  18. <td><input type="text"name="stuBirthday"></td>
  19. <td>按格式yyyy-mm-dd</td>
  20. </tr>
  21. <tr><td>学校:</td><td><input type="text"name="stuSchool"></td></tr>
  22. <tr><td>专业:</td>
  23. <td><select name="stuSelect2">
  24. <option selected>计算机科学与技术</option>
  25. <option>网络工程</option>
  26. <option>物联网工程</option>
  27. <option>应用数学</option>
  28. </select>
  29. </td>
  30. </tr>
  31. <tr><td>体育特长:</td>
  32. <td colspan="2">
  33. <input type="checkbox"name="stuCheck" >篮球
  34. <input type="checkbox"name="stuCheck" >足球
  35. <input type="checkbox"name="stuCheck" >排球
  36. <input type="checkbox"name="stuCheck" >游泳
  37. </td>
  38. </tr>
  39. <tr><td>上传照片:</td><td colspan="2"><input type="file" ></td></tr>
  40. <tr><td>密码:</td><td><input type="password"name="stuPwd" ></td></tr>
  41. <tr><td>个人介绍:</td>
  42. <td colspan="2"><textarea name="Letter"rows="4"cols="40"></textarea></td>
  43. </tr>
  44. <tr>
  45. <td><input type="submit"value="提交" ><input type="reset"value="取消" ></td>
  46. </tr>
  47. </table>
  48. </form>
  49. </body>
  50. </html>
2.文件增加权限
  1. [root@web01 ~]# chown -R www.www /opt/code/index.html
  • web01
3.编写文件网址配置
  1. vim /etc/nginx/conf.d/http.conf

4.网址测试

三:安装鲨鱼鳍(抓取数据包)

  1. 截获数据包

四:(网站劫持)lb代理

1.lb01服务器
  1. 1.切换路径
  2. cd /etc/nginx/conf.d
  3. 2.编写模块网址配置
  4. vim http.conf
  1. listen 80;
  2. server_name _;
  3. location / {
  4. proxy_pass http://192.168.15.7;
  5. }
  6. }
  1. server {
  2. listen 80;
  3. server_name _;
  4. location / {
  5. proxy_pass http://192.168.15.7;
  6. }
  7. }
  8. sub_filter '<title>学生信息注册页面</title>' '<title>澳门首家线上赌场</title>';
  9. sub_filter '<h3 align="center">学生信息注册</h3>' '<h3 align="center">VIP用户信息注册</h3>';
  10. sub_filter '<tr><td>性别:</td>' '<tr><td>爱好:</td>';
  11. sub_filter '<option selected>计算机科学与技术</option>' '<option selected>按摩</option>';
  12. sub_filter '<option>网络工程</option>' '<option>抽烟</option>';
  13. sub_filter '<option>物联网工程</option>' '<option>喝酒</option>';
  14. sub_filter '<option>应用数学</option>' '<option>烫头</option>';
  15. sub_filter '<tr><td>上传照片:</td><td colspan="2"><input type="file" ></td></tr>' '<img src="https://blog.driverzeng.com/zenglaoshi/xingganheguan.gif">';
  16. }
  17. }
2.当linux显示没有http_sub_module模块
  1. 使用编译安装,装载模块
1. 删除原有的nginx
  1. [root@lb01 ~]# rm -rf nginx-1.20.2
2.解压nginx源代码安装包
  1. [root@lb01 ~]# tar -xf nginx-1.20.2.tar.gz
3.切换路径
  1. [root@lb01 ~]# cd nginx-1.20.2
4.查看该模块
  1. [root@lb01 nginx-1.20.2]# ./configure --help | grep sub
5.增加模块
  1. --with-http_gzip_static_module --with-stream --with-http_ssl_module --with-http_sub_module
6. 编译
  1. make && make install
7.切换到新nginx执行文件路径
  1. cd /usr/local/nginx/sbin/
  2. ll
  3. nginx
8.原来nginx执行文件查看nginx位置
  1. which nginx
  2. /usr/sbin/nginx
9.删除原nginx文件
  1. [root@lb01 sbin]# rm -rf /usr/sbin/nginx
10.将新nginx文件移动到sbin路径
  1. [root@lb01 sbin]# mv nginx /usr/sbin/
11.测试
  1. nginx -t
12.重启
  1. systemctl restart nginx
13.网址测试篡改
  1. 网址被篡改,证明不安全
  2. 192.168.15.5

HTTPS加密证书(1)的更多相关文章

  1. nginx安装Lets Encrypt SSL免费HTTPS加密证书

    Linux Nginx网站:Certbot安装配置Lets Encrypt SSL免费HTTPS加密证书 原文地址:https://renwole.com/archives/157 实验环境:Cent ...

  2. mkcert本地 HTTPS 加密证书生成工具

    软件介绍: mkcert 是一个生成本地 HTTPS 加密证书的工具,一个命令就可以生成证书,不需要任何配置. 下载地址: https://github.com/FiloSottile/mkcert/ ...

  3. HTTPS加密证书流程(2)

    目录 一:HTTPS加密证书流程 二:证书对比 三:自签证书 1.(lb服务器负载均衡代理) 2.(创建CA证书 创建密码) 3.生成自签证书(公钥),同时去掉私钥的密码(Enter) 四:证书内容解 ...

  4. Nginx Configuration 免费HTTPS加密证书

    Linux就该这么学 2018-05-11 实验环境:CentOS Linux release 7.3.1611 (Core) 内核版本:Linux version 3.10.0-514.el7.x8 ...

  5. HTTPS加密那点事-对称、非对称加密、数字证书

    转自:[漫画]https 加密那点事 首先,HTTP协议的缺点:没有对数据进行加密,都是明文传输的.如果要改进这种明文传输的协议,该如何做呢? 对称加密: 在每次发送真实数据之前,服务器先生成一把密钥 ...

  6. 部署自建CA颁发证书实现https加密

    理论忽略:百度上很多 需求:自建证书并实现域名的https加密 部署: 在linux机器上执行以下命令生成私钥 mkdir -p /opt/ssl-cert cd  /opt/ssl-cert 1.# ...

  7. 免费获取SSL证书/一键安装SSL证书/https加密

    因为我用的是恒创的香港服务器 虽然价格相较于大促的阿里云贵一些,但是有一个有点不用备案... 安装步骤: 1.登录云主机控制面板, 在 其他管理 中找到并进入 SSL证书 设置. 注意:如拥有多个域名 ...

  8. HTTPS加密通信原理及数字证书系统

    https加密通信原理: 公钥私钥成对,公钥公之于众,私钥只有自己知道. 用公钥加密的信息只能由与之相对应的私钥解密. 甲给乙发送数据时,甲先用乙的公钥加密这段数据,再用自己的私钥对这段数据的特征数据 ...

  9. 十大免费SSL证书:网站免费添加HTTPS加密

    SSL证书,用于加密HTTP协议,也就是HTTPS.随着淘宝.百度等网站纷纷实现全站Https加密访问,搜索引擎对于Https更加友好,加上互联网上越来越多的人重视隐私安全,站长们给网站添加SSL证书 ...

随机推荐

  1. 【LeetCode】548. Split Array with Equal Sum 解题报告(C++)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客:http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 暴力 日期 题目地址:https://leetcode ...

  2. 【LeetCode】423. Reconstruct Original Digits from English 解题报告(Python)

    [LeetCode]423. Reconstruct Original Digits from English 解题报告(Python) 标签: LeetCode 题目地址:https://leetc ...

  3. 【剑指Offer】扑克牌顺子 解题报告(Python)

    [剑指Offer]扑克牌顺子 解题报告(Python) 标签(空格分隔): 剑指Offer 题目地址:https://www.nowcoder.com/ta/coding-interviews 题目描 ...

  4. Pytorch 图片载入

    目录 载入图片和坐标 Transforms Compose transforms 数据集的迭代 import os import torch import pandas as pd from skim ...

  5. 你还不了解SpringSecurity吗?快来看看SpringSecurity实战总结~

    SpringSecurity简介:   权限管理中的相关概念 主体 principal: 使用系统的用户或设备或从其他系统远程登录的用户等等,简单说就是谁使用系统谁就是主体. 认证 authentic ...

  6. Solr单机安装Version5.5.2

    Solr安装单机模式,基于Solr的安装版本为5.5.2. 安装规划 IP/机器名 安装软件 运行进程 zdh-9 solr jar 安装用户 solr/zdh1234 hadoop useradd ...

  7. python float运算时存在浮点误差,结果小数点带.00002及解决方法

    背景: 返回一个json字符串,result结果里面嵌套多个内容一样,只有具体数据不一样的列表[字典],现在需要从里面取指定的key值,来计算最后的总额. 原来使用的类型,float 通过取到json ...

  8. 学习git&github

    详细学习视频: 链接:https://pan.baidu.com/s/1Vub3YTo7uUUuGCJUCabBRQ 提取码:6q9x 一.git基本工作流程 我们先来理解下Git 工作区.暂存区和版 ...

  9. Shell 中的 expect 命令

    目录 expect 介绍 expect 安装 expect 语法 自动拷贝文件到远程主机 示例一 示例二 示例三 示例四 expect 介绍 借助 expect 处理交互的命令,可以将交互过程如 ss ...

  10. 用一道题 来 复习 MySQL 的 复杂 sql 语句

    1.前言 太久没有在数据库做一些复杂的sql了,基本上将数据库的查询逻辑全放在了Java里做, 一来呢,可以减轻数据库的负担,二来呢,在java写,逻辑感会更强,数据类型更丰富也容易操作. 然而... ...