Squid是Linux和UNIX平台下最为流行的高性能免费应用层代理服务器,它具有权限管理灵活、性能高和效率快等特点。Squid的另一个优越性在于它使用访问控制列表(ACL) 和访问权限列表(ARL)进行权限管理和内容过滤。访问控 制清单和访问权限清单通过阻止特定的网络连接来减少潜在 的Internet非法连接,可以使用这些清单来确保内部网的主 机无法访问有威胁的或不适宜的站点。

 

    这篇文章的重点不在于介绍其工作原理,主要是介绍squid的一些基本配置,大致分为三块儿:一、正向代理及策略控制;二、透明代理;三、反向代理。下面是这个实验的拓扑图:

squid的控制策略举例及其正反向代理配置_正向代理

首先作为代理服务器,squid要具备双网卡并开启转发功能

squid的控制策略举例及其正反向代理配置_透明代理_02

[root@server1 ~]# vim /etc/sysctl.conf

squid的控制策略举例及其正反向代理配置_透明代理_03

[root@server1 ~]# sysctl –p

 

rpm包安装squid:

squid的控制策略举例及其正反向代理配置_squid_04

squid的控制策略举例及其正反向代理配置_透明代理_05

 

 

一、正向代理及策略控制

编辑/etc/squid/squid.conf文件

squid的控制策略举例及其正反向代理配置_透明代理_06

squid的控制策略举例及其正反向代理配置_访问控制_07

在客户端指明要使用代理服务器

squid的控制策略举例及其正反向代理配置_squid_08

squid的控制策略举例及其正反向代理配置_squid_09

 

例1、禁止IP地址为172.16.10.101的客户机上网

编辑/etc/squid/squid.conf文件

squid的控制策略举例及其正反向代理配置_访问控制_10

重启服务

验证

squid的控制策略举例及其正反向代理配置_访问控制_11

 

例2、禁止172.16.10.0整个网段的客户机上网

编辑/etc/squid/squid.conf文件

squid的控制策略举例及其正反向代理配置_正向代理_12

重启服务

 

 

 

例3、禁止访问115.239.210.27的站点

编辑/etc/squid/squid.conf文件

squid的控制策略举例及其正反向代理配置_访问控制_13

重启服务

验证

squid的控制策略举例及其正反向代理配置_反向代理_14

 

 

 

 

例4、禁止访问www.sina.com

编辑/etc/squid/squid.conf文件

squid的控制策略举例及其正反向代理配置_反向代理_15

重启服务

验证

squid的控制策略举例及其正反向代理配置_透明代理_16

 

 

 

 

例5、禁止访问域名中含有“sina”的网站

编辑/etc/squid/squid.conf文件

squid的控制策略举例及其正反向代理配置_访问控制_17

重启服务

验证

squid的控制策略举例及其正反向代理配置_正向代理_18

 

 

 

 

例6、结合时间来控制用户的上网行为

编辑/etc/squid/squid.conf文件

squid的控制策略举例及其正反向代理配置_反向代理_19

重启服务

查看系统时间

squid的控制策略举例及其正反向代理配置_正向代理_20

验证

squid的控制策略举例及其正反向代理配置_反向代理_21

修改系统时间

squid的控制策略举例及其正反向代理配置_squid_22

再次验证

squid的控制策略举例及其正反向代理配置_透明代理_23

 

 

 

 

例7、过滤网页内容

编辑/etc/squid/squid.conf文件

squid的控制策略举例及其正反向代理配置_反向代理_24

重启服务

验证

squid的控制策略举例及其正反向代理配置_反向代理_25

 

 

 

 

二、透明代理

使用iptables使DNS能正常通过代理服务器,而上网请求要经过代理服务器的检测

squid的控制策略举例及其正反向代理配置_squid_26

编辑/etc/squid/squid.conf文件

squid的控制策略举例及其正反向代理配置_透明代理_27

重启服务

在客户端要取消使用代理功能,并设置网关为代理服务器的内网地址,DNS指向也要设置

squid的控制策略举例及其正反向代理配置_正向代理_28

验证

squid的控制策略举例及其正反向代理配置_访问控制_29

 

 

 

 

 

三、反向代理

编辑/etc/squid/squid.conf文件

squid的控制策略举例及其正反向代理配置_访问控制_30

squid的控制策略举例及其正反向代理配置_访问控制_31

重启服务

验证

squid的控制策略举例及其正反向代理配置_squid_32