linux Apache三

Apache的加密访问

1.HTTPS的作用
HTTP的缺点:
(1)通信使用明文,内容可能被窃听
在这里插入图片描述
(2)不验证通信方身份,因此有可能遭遇伪装
在这里插入图片描述
(3)无法验证报文的完整性,所有有可能已篡改
在这里插入图片描述
http + 加密 + 认证 + 完整性保护 = https
通常情况下http是直接和tcp层进行通信的。当使用ssl(安全套阶字)时,则演变成http先和ssl通信,ssl再和tcp通信的了。
在这里插入图片描述
ssl采用的是公钥加密,https采用混合加密机制。
(1)使用对称加密的缺点
对称密钥易被截取
在这里插入图片描述
在这里插入图片描述
(2)采用公钥加密
在这里插入图片描述
(3)https混合加密
在这里插入图片描述
公开密钥需要认证
在这里插入图片描述
2.加密访问的含义
访问百度时,输入网址 http://www.baidu.com
自动跳转到 https://www.baidu.com
3.实验步骤
第一个实验:生成证书
(1)安装mod_ssl包
在这里插入图片描述
发现子配置目录中出现了ssl.conf文件
在这里插入图片描述
(2)生成私钥
使用 man openssl genrsa 指令查看帮助,发现默认生成的private key是2048位的。
在这里插入图片描述
在这里插入图片描述
(3)生成证书请求
-new:新的请求
-key:使用私钥文件
-out:待输出文件
.csr:证书签证请求
在这里插入图片描述
(4)生成证书
x509:证书类型为x509
-req:请求签发证书
-days:证书的有效时间
-in:待处理文件
-signkey:证书为私钥做签证
-out:待输出文件
在这里插入图片描述
(5)编辑/etc/httpd/conf.d/ssl.conf文件
在这里插入图片描述 在这里插入图片描述
(6)查看证书的信息
在rehl7中访问https://192.168.145.100
在这里插入图片描述
在这里插入图片描述
发现使用https可以正常访问了
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
第二个实验:网页重写
对于一些需要和用户交互的网站,需要使用apache的加密方式(会延长加载时间),而对于一些门户型网站,是不需要的。因此我们需要有选择的进行加密 。
(1)准备
在apache服务器rehl8(192.168.145.100)中
在这里插入图片描述
在这里插入图片描述
在客户端rehl7中
在这里插入图片描述
(2)新建/etc/httpd/conf.d/virthost.conf文件
登录需要加密,要使用443端口,因此记得在访问时需要输入https://login.lyueyue.com。
在这里插入图片描述 在这里插入图片描述(3)在rehl7中访问
经过下载证书等一系列步骤(参前) 我们可以成功访问。 在这里插入图片描述
在这里插入图片描述
如何在我们输入login.lyueyue.com(使用80端口)的时候自动跳转到https://login.lyueyue.com(使用443端口)呢?这就是网页重写,当我们输入某个域名时,自动跳转到https访问。
(4)编辑/etc/httpd/conf.d/virthost.conf文件
^(/.星) $ :客户在浏览器上输入的字符
%{HTTP_HOST}:表示客户主机
$1:表示 ^(/.星) $的值
给用户输入的地址前加上https
在这里插入图片描述
在这里插入图片描述
(5)在rehl7中测试
输入login.lyueyue.com发现自动跳转到https:// login. lyueyue. com
在这里插入图片描述
在这里插入图片描述

Apache+Squid

1.Squid的作用: Squid是一个缓存Internet 数据的软件,其接收用户的下载申请,并自动处理所下载的数据。当一个用户想要下载一个主页时,可以向Squid 发出一个申请,要Squid 代替其进行下载,然后Squid 连接所申请网站并请求该主页,接着把该主页传给用户同时保留一个备份,当别的用户申请同样的页面时,Squid 把保存的备份立即传给用户,使用户觉得速度相当快。Squid 可以代理HTTP、FTP、GOPHER、SSL和WAIS等协议并且Squid 可以自动地进行处理,可以根据自己的需要设置Squid,使之过滤掉不想要的东西。
在这里插入图片描述
2.Squid正向代理
实验环境:
单网卡虚拟机2设定ip不能上网
双网卡虚拟机1设定ip1可以连接单网卡主机,设定ip2可以上网
实验效果:
让单网卡虚拟机2不能上网但浏览器可以访问互联网页
实验步骤:
(1)设定虚拟机2的网络使其不能上网
在这里插入图片描述
在这里插入图片描述
发现虚拟机2中没有安装apache且不能上网
在这里插入图片描述
(2)设定虚拟机1的网络
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
发现虚拟机1安装了apache,可以上网并且可以ping通虚拟机2。
在这里插入图片描述
(3)在双网卡虚拟机1中安装squid
在这里插入图片描述
(4)修改/etc/squid/squid.conf文件
http_access:访问控制
cache_dir:存储机制是ufs,在/var/spool/squid下建立缓存目录,一级目录16个,二级目录256个,缓存大小不超过100M,否则会将原来的缓存覆盖掉。
配置前/var/spool/squid下没有东西
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述(5)更改虚拟机1防火墙
在这里插入图片描述
(6)在虚拟机2中设置代理
在这里插入图片描述
在这里插入图片描述
(7)在虚拟机2中测试
发现不能ping通百度,但是可以通过浏览器访问百度。
在这里插入图片描述
3.Squid反向代理
实验环境:
虚拟机1(192.168.145.100):Apache服务器
虚拟机2(192.168.145.101):没有安装Apache服务器,安装Squid,没有数据,负责缓存。
虚拟机3(192.168.145.7):客户主机
在这里插入图片描述
实验步骤:
(1)准备
在虚拟机1中
在这里插入图片描述
在虚拟机2中
在这里插入图片描述
(2)编辑虚拟机2中/etc/squid/squid.conf文件
使用80端口,这个端口squid没有,是借用apache的,vhost表示支持虚拟主机,vport表示支持虚拟端口。
cache_peer:当虚拟机2的80端口(63行指定)被访问,会从虚拟机1(ip为192.168.145.100、身份是父级即资源主机)的80端口缓存数据,其中0表示没有同伴(备份),proxy-only表示只做代理。
在这里插入图片描述
在这里插入图片描述
(3)开启虚拟机2防火墙的80端口
在这里插入图片描述
(4)在虚拟机3中测试
配置成功🍓
在这里插入图片描述
补充: 可以查看squid的帮助文档
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值