一、squid代理服务器概述;

概述:Squid Cache(简称为Squid)是http代理服务器软件。Squid用途广泛,可以作为缓存服务器也可以作为缓存代理服务器,代理用户向web服务器请求数据并进行缓存,可以过滤流量帮助网络安全,也可以作为代理服务器链中的一环,向上级代理转发数据或直接连接互联网。还也可以用在局域网中,使局域网用户通过代理上网;Squid将数据缓存在内存中,同时也缓存DNS查寻的结果,除此之外,它还支持非模块化的DNS查询,对失败的请求进行消极缓存。Squid支持SSL,支持访问控制;

优势:

1.提高客户端访问速度;

2.隐蔽内部主机的ip地址;

3.部署简单,可以实现访问控制;

作用

——代理上网(正向代理,透明代理)

——网站静态页面缓存加速(反向代理)

1、普通代理(也叫传统代理,正向代理)

客户端必须在自己的浏览器里指定代理服务器的ip地址和代理服务监听的端口号,才能通过squid代理服务器上网。

2、透明代理

透明代理,本质作用是和普通代理是一样的,但是透明代理,客户端不需要在自己的浏览器里指定代理服务器的ip地址和代理服务监听的端口号,给客户端的感觉自己是直接和公网通信,但是必须把网关地址指向代理服务器的内网接口ip地址。

3、反向代理

传统和透明是为客户端服务的,借助squid加快访问web服务的速度,或者是公司内部对员工上网行为做限制使用的,而反向代理模式下的squid的服务对象是web服务器,通过squid来隐藏真实web服务器IP,加快客户的访问速度,还有负载均衡的功能。

 二、部署实验

1、正向代理

内网客户机:192.168.40.133(ens33)

squid服务器:192.168.40.132(ens33)  192.168.40.128(ens36)

web务器:192.168.40.211(ens33)  部署测试页面

配置内网客户机 ,将默认路由指向squid服务器的内网IP(ens33的IP)

[root@localhost ~]#  route add default gw 192.168.40.132
安装linux图形化和火狐浏览器用户接下来的测试

# yum groupinstall "X Windows System" "Desktop"  (也可以直接用Linux图形化版测试)

# yum install firefox

安装、配置ssquid服务器

# yum install squid

修改squid主配置文件/etc/squid/squid.conf 、在squid监听端口下加入,不写会报错,随意一个地址都可以

# vim  /etc/squid/squid.conf
http_port 192.168.40.132:
cache_mem MB
cache_dir ufs /opt/squid_cache
cache_effective_user squid
cache_effective_group squid
cache_access_log /var/log/squid/access.log
cache_log /var/log/squid/cache.log
http_access allow all
visible_hostname proxy.test.com
cache_mgr webmaster@test.com

编辑内核参数,开启路由转发

# vim /etc/sysctl.conf  (永久生效)
net.ipv4.ip_forward = (echo "" > /proc/sys/net/ipv4/ip_forward 临时生效)
# sysctl -p (刷新内核参数)
net.ipv4.ip_forward =
# service squid restart
Redirecting to /bin/systemctl restart squid.service

测试结果,客户机切换至图形化然后再用火狐浏览器上添加代理服务器

# init 5 #切换至图形化

内网客户机把代理设置成  squid服务器

内网客户机  通过squid代理 成功访问web服务器

访问web服务器的ip就能看见网页了,值得一提的是squid是具有缓存web服务器静态资源的功能的,因为这里的网站首页本身就是一个html的静态文件,当你第一次访问过后,squid服务器就已经把首页文件缓存到自己的磁盘上了也就是说即使现在把web服务器上的web服务关闭了,网页也可以通过squid的缓存正常访问的!
想在命令行终端使用SQUID需要在/etc/profile/环境变量的文件里添加一个环境变量

export HTTP_PROXY=http://192.168.10.10:3128

2、透明代理部署

大部分与正向代理一样

不同点:透明模式因为客户机不用指定squid的代理IP所以squid就要在自己的配置文件里声明是用哪块网卡代理的请求,后面的transparent代表的是透明模式

# vim  /etc/squid/squid.conf
http_port 192.168.40.132: transparent (加上)

squid服务器防火墙配置

这条规则的作用在于:经过ens33网卡 这个网段 所有的80端口的请求,全部转发给3128端口

# iptables -t nat -I PREROUTING -i ens33 -s 192.168.40.0/ -p tcp --dport  -j REDIRECT --to  

重启squid

# service squid restart

squid限制客户机请求资源大小

将这一条写入squid的主配置文件客户机请求的资源就不能超过100MB了(写在visible_hostname下面)

reply_body_max_size 100 MB

注意取消之前132的代理,换为默认

测试结果:

3、反向代理部署
——squid服务器      (ens33vmnet1:192.168.10.132    ens36vmnet3:192.168.149.2)
——内网web服务器 (ens33vmnet1:192.168.10.211    gw  192.168.10.132 )
——内网web服务器 (ens33vmnet1:192.168.10.155    gw  192.168.10.132 )
——外网客户机  windos10

web服务器配置:

web服务器155、211安装Apache,并写一个网站的首页文件,这里的web服务要将自己的网关配置为squid的ens33的IP

# vim /etc/sysconfig/network-scripts/ifcfg-ens33  (或者router add default gw 192.168.10.132)
GATEWAY=192.168.10.132  (155和211配一样网关)
[root@localhost ~]# curl 192.168.10.211
haha
[root@localhost ~]# curl 192.168.10.155
wq
squid服务器:

配置、安装squid

# yum -y install squid
#vim /etc/squid/squid.conf

windos访问实现轮询结果

注:1、内网要相互ping通

2、三个一致:windos网络适配器、vmware虚拟网络编辑器、vmware网卡配置文件中的网段要一致

3、不需要ping通百度,vmnet3、vmnet2模式不通网很正常,windos能访问

squid的三种模式的更多相关文章

  1. Linux 搭建 squid 代理服务器 三种模式

    CentOS 6.7 squid 代理服务器 一般有两张或以上网卡,一张链接公网,访问外网资源,一张位于局域网. 代理服务器可以提供文件缓存.复制和地址过滤等服务,充分利用有限的出口带宽,加快内部主机 ...

  2. git push :推送本地更改到远程仓库的三种模式

    摘要:由于在git push过程中,no-fast-forward 的push会被拒绝,如何解决git push失败的问题?这里面有三种方法,分别会形成merge形式的提交历史,线性形式的提交历史,覆 ...

  3. App开发三种模式

    APP开发三种模式 现在App开发的模式包含以下三种: Native App 原生开发AppWeb App 网页AppHybrid App 混合原生和Web技术开发的App 详细介绍: http:// ...

  4. [转]VMware Workstation网络连接的三种模式

    经常要使用VMWare Workstation来在本地测试不同的操作系统,以前也搞不清楚网络连接三种模式,最近看了几篇文章才算明白.现总结如下: 1. VMware Workstation的虚拟网络组 ...

  5. LVS三种模式配置及优点缺点比较

    目录: LVS三种模式配置 LVS 三种工作模式的优缺点比较 LVS三种模式配置 LVS三种(LVS-DR,LVS-NAT,LVS-TUN)模式的简要配置 LVS是什么: http://www.lin ...

  6. LVS三种模式配置及优点缺点比较 转

    LVS三种模式配置及优点缺点比较   作者:gzh0222,发布于2012-11-12,来源:CSDN   目录: LVS三种模式配置 LVS 三种工作模式的优缺点比较 LVS三种模式配置 LVS三种 ...

  7. MySQ binlog三种模式

    MySQ binlog三种模式及设置方法 1.1 Row Level  行模式 日志中会记录每一行数据被修改的形式,然后在slave端再对相同的数据进行修改 优点:在row level模式下,bin- ...

  8. delegate,notifucation,KVO三种模式实现通信的优缺点

             在开发ios应用的时候,我们会经常遇到一个常见的问题:在不过分耦合的前提下,controllers间怎么进行通信.在IOS应用不断的出现三种模式来实现这种通信: 1.委托delega ...

  9. 辛星跟您玩转vim第一节之vim的下载与三种模式

    首先值得一提的是,我的vim教程pdf版本号已经写完了,大家能够去下载,这里是csdn的下载地址:点此下载 ,假设左边的下载地址挂掉了,也能够自行在浏览器以下输入例如以下地址进行下载:http://d ...

随机推荐

  1. Python 正则表达式Ⅴ

    正则表达式实例 字符匹配 字符类 特殊https://www.xuanhe.net/字符类

  2. TTTTTTTTTTTT POJ 2112 奶牛与机器 多重二分匹配 跑最大流 建图很经典!!

    Optimal Milking Time Limit: 2000MS   Memory Limit: 30000K Total Submissions: 15682   Accepted: 5597 ...

  3. Android 一般动画animation和属性动画animator

    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 3 ...

  4. Postman(二)、调试模式

    postman提供了一个调试模式,很方便我们写脚本以及断言 在脚本中用console.log()打印,到控制台查看 比如写入如下脚本: 点击Send后,在控制台可以看到如下信息

  5. 「雅礼集训 2017 Day5」远行

    题目链接 问题分析 要求树上最远距离,很显然就想到了树的直径.关于树的直径,有下面几个结论: 如果一棵树的直径两个端点为\(a,b\),那么树上一个点\(v\)开始的最长路径是\(v\rightarr ...

  6. [LOJ2538][PKUWC2018]Slay the Spire:DP

    分析 学会新姿势!我们可以通过调整DP顺序来体现选取物品的优先顺序! 显然选取强化牌的最优策略是倍数从高到低,能选就选,最多选\(k-1\)张,选取攻击牌的最优策略是伤害从高到低,尽量少选,但最少选\ ...

  7. R_Studio(癌症)以等宽类别值、自定义类别值、等频类别值(分为5类)

    对“癌症.csv”中的肾细胞癌组织内微血管数进行连续属性的离散化处理 增加“微血管数分类1”属性,取值为等宽类别值(分为5类),增加“微血管数分类2”属性,取值为自定义类别值(0~40,41~60,6 ...

  8. linux下面实时查看进程,内存以及cpu使用情况使用命令

    top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器 可以直接使用top命令查看整体情况,如图: 但是这样虽然看的东西多,但是闲的比较 ...

  9. JMH基准测试框架

    jmh-gradle-plugin, 集成JMH基准测试框架和 Gradle   0 赞 0 评论 文章标签:Gradle  JMH  基准  INT  benchmark  framework  帧 ...

  10. Concurrent包里的其他东西:ArrayBlockingQueue、CountDownLatch等等。

    1:本例介绍一个特殊的队列:BlockingQueue,如果BlockingQueue是空的,从BlockingQueue取东西的操作将会被阻断进入等待状态,直到BlockingQueue进了东西才会 ...