linux中代理服务squid

squid的介绍

1、Squid是基于Unix的代理服务器(proxy server),它缓存比起点源点更接近请求者的互联网内容。Squid支持缓存多种不同的网络对象,包括那些通过HTTP和FTP访问的人。缓存频繁要求网页、媒体文件和其它加速回答时间并减少带宽堵塞的内容。
2、Squid代理服务器(Squid proxy server)一般和原始文件一起安装在单独服务器而不是网络服务器上。Squid通过追踪网络中的对象运用起作用。Squid最初担当中介,仅仅是把客户要求传递到服务器并存储要求对象的拷贝。如果同一个客户或同一批客户在要求还在Squid缓存(cache)时要求相同的对象,Squid就可以立刻服务,加速下载并保存带宽。
3、squid是一种用来缓存Internet数据的软件。接受来自人们需要下载的目标(object)的请求并适当的处理这些请求。也就是说,如果一个人想下载一web界面,他请求squid为他取得这个页面。squid随之连接到远程服务器并向这个页面发出请求。然后,squid显式地聚集数据到客户端机器,而且同时复制一份。当下一次有人需要同一页面时, squid可以简单的从磁盘中读到它,那样数据会立即传输到客户端。

squid代理的作用

通过缓存的方式为用户提供Web访问加速
对用户的Web访问进行过滤控制

squid 正向代理

客户主动设定代理服务器的信息
实验环境: 两台主机

1.在不能上网的虚拟机(客户端)
设定虚拟机网卡配置:

DEVICE=ens3
ONBOOT=yes
BOOTPRAOTO=none
IPADDR=172.25.254.240
PREFIX=24

在客户端上下载火狐,进入网页设置preferences
NetWork Proxy 选择代理Manual proxy configuration
172.25.254.130 端口:3128
在这里插入图片描述在此虚拟机的浏览器里面设置代理主机的信息,使它在依然ping不通百度的情况下,但是可以上网,
在浏览器里面加入代理服务器的信息,浏览器上明确指名代理服务器的IP地址和端口号(3128端口)
客户端上网时,每次都把请求发送给代理服务器处理,代理服务器根据请求确定是否连接到远程web服务器获取数据。如果在本地缓冲区有目标文件,则直接将文件传给用户即可。如果没有的话则先取回文件,先在本地保存一份缓冲,然后将文件发送给客户端浏览器。

2.在可以上网的虚拟机(服务器)

DEVICE=ens3
ONBOOT=yes
BOOTPROTO=none
PREFIX=24
IPADDR=172.25.254.140
GATEWAY=172.25.254.250
DNS1=114.114.114.114

操作:
在服务器中
dnf install squid -y
vim /etc/squid/squid.conf

59 http_access allow all
65 cache_dir ufs /var/spool/squid 100 16 256
如图:
在这里插入图片描述

systemctl restart squid 
firewall-cmd --permanent --add-port=3128/tcp
firewall-cmd --reload

测试:
在客户端中
ping www.baidu.com 发现网络不通
在浏览器中访问www.baidu.com可以

其实显示出来的网页是代理提前加载的

squid反向代理

企业服务器自己主动设定代理服务器的信息

实验环境:
squid反向代理也叫做cdn加速,利用squid代理服务器,此时属于反向代理
(此实验需要三台主机,自己的真机作为客户端,desktop虚拟机作为代理服务器,server虚拟机作为服务器(有apache服务))

172.25.254.240 ##Apache服务器
172.25.254.140 ##squid,没有数据,负责从真实服务器上缓存客户所需要的数据

在代理服务器:

vim /etc/squid/squid.conf
http_port 80 vhost vport		##vhost 支持虚拟域名 vport 支持虚拟端口
#当172.25.254.140的80端口被访问会从172.25.254.240的80端口缓存数据
cache_peer 172.25.254.240 parent  80      0       proxy-only

在这里插入图片描述

火墙通过httpd:

firewall-cmd --permanent --add-service=squid
firewall-cmd --reload
firewall-cmd --list-all

systemctl restart squid 重启squid代理服务

服务器:
dnf install httpd -y 下载httpd服务
火墙允许httpd服务:

firewall-cmd --permanent --add-service=htttp
firewall-cmd --reload
firewall-cmd --list-all

测试:
真机,即客户端访问代理服务器firefox http:/172.25.254.140(代理服务器)
访问看到的是172.25.254.240上的数据(服务器)

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值