指定代理服务器
Tagged Tags:

1、squid代理:

缓存网页,减少重复请求,加快访问速度,隐藏真实ip

代理的分类:

传统代理:使用Internet和内网,客户端需明确指定代理服务器。

透明代理:使用于内网访问外网,指定代理服务器,但必须指定网关,网管配置iptables策略,将端口重定向到代理服务器端口。

亚搏app官方网站 ,2、squid和nat的区别:

NAT:工作在网络层,通过转换地址转发数据包,实现内外网之间通信。

www.yabovip4.com ,应用代理:工作在应用层,通过缓存提供服务,不进行数据包转发,主要实现web缓存服务。

3、squid的安装

./configure  –prefix=/usr/local/squid(安装目录)  –sysconfdir=/etc(配置文件位置)  –enable-linux-netfilter(支持内核过滤)  –enable-linux-tproxy(支持透明模式)
 –enable-async-io=100 
  –enable-err-language=”Simplify_Chinese”(错误信息显示语言)  –enable-underscore(允许URL中有下划线) –enable-poll(使用Poll()模式,提升性能)  –enable-gnuregex(使用GNU正则表达式)

4、主配置文件/etc/squid.con的配置项:

http_port  3128                        
     默认端口号:3128

cache_effective_user  squid        
指定squid的程序用户

cache_effective_group  squid      
指定账号的基本组

repy_body_max_size  10  MB      
允许下载最大文件大小

maximum_object_size  4096 KB  
允许缓存的最大对象

visible_hostname  a.benet.com    
指定主机名(名称随意)

5、squid的管理命令:

squid  -k  parse              
检测语法

squd  -z                          
初始化缓存目录

squid                              
启动squid

squid  -k  reconfigure      
重新加载配置

关闭squid: kill 
进程号(查看进程号命令:netstat  -anpt  | grep “squid”)

6、透明代理配置:

1)在/etc/squid.conf配置文件添加支持透明代理

http_port 
192.168.1.1:3128  transparent

(192.168.1.1是内网网关)

2)添加iptables策略,将80号端口(HTTP)和443端口(HTTPS)重定向到3128

Iptables  -t nat  -A 
PREROUTING -p  tcp  –dport 80  -j  REDIRECT –to  3128

Iptables  -t nat  -A 
PREROUTING -p  tcp  –dport 443  -j  REDIRECT –to  3128

7、squid的控制

由ACL和http_access两条命令实施,ACL定义规则,http_access应用规则。

格式:  acl  名称  控制类型
 控制内容

指定代理服务器。http_access  allow|deny 名称1 
名称2

指定代理服务器。控制类型:src  源地址           dst 
目标地址

                  port  端口号
         time 访问时间

指定代理服务器。dstdomain  目标域       
    maxconn 连接数url_grgex 目标URL地址      urlpath_regex 
URL路径(文件类型)

 

指定代理服务器。可以设置黑白明单以控制允许或拒绝访问的主机

例:建立针对目标地址的黑名单文件

mkdir  /etc/squid

cd  /etc/squid

vim 
ipblock.list –写入地址(61.135.167.36  125.39.127.25
  60.28.14.0/24)

调用指定文件中的列表内容:

acl  IPBLOCK dst 
“etc/squid/ipblock.list”

8、sarg是一款squid日志分析工具,采用html格式,详细列出站点信息时间、排名、连接次数、访问量,主配置文件为sarg.conf可设置字体大小、背景、颜色等。

 

Squid代理服务器应用示例

实验拓扑图:

亚搏app官方网站 1

实验要求:

(1)如上图要求配置网络,内部主机需要配置默认网关,外部linux不需要配置默认网关。

(2)在squid服务器上安装squid,并做相关的配置,启动squid服务,查看端口。

指定代理服务器。(3)搭建传统代理服务器,要求在内部linux服务器能够使用传统代理访问外部的web服务器。内部客户端最大允许下载的文件不能超过10MB,squid最大缓存的文件为4MB。内部客户端验证文件下载。

(4)修改squid的主配置文件,搭建一台透明代理服务器,结合iptables的重定向策略,开启路由转发。验证内部客户端能否使用透明代理访问外部的web服务器。

(5)修改squid的主配置文件,设置ACL访问控制,要求内部客户端192.168.1.0网段在周一至周五的9:00—17:00才能使用代理服务器上网,其他时间不允许上网,并且禁止下载.mp3,.avi,.rmvb的视频文件。针对某些目标地址建立黑名单,如61.135.167.36,125.39.127.25

修改squid服务器的时间,客户端验证是否能上网。

客户端验证mp3视频文件能否下载。

(6)在squid服务器上安装Squid日志分析软件sarg,进行相关的配置,并在客户端访问日志分析的网站。

步骤:

1、按要求配置网络,内部主机需要配置默认网关,外部linux不需要配置默认网关。(如下图)

亚搏app官方网站 2

亚搏app官方网站 3

亚搏app官方网站 4

2、在squid服务器上安装squid,并做相关的配置,启动squid服务,查看端口。

(1)解包并编译安装squid

亚搏app官方网站 5

(2)安装完成后创建链接文件,创建用户和组。

亚搏app官方网站 6

(3)修改squid的主配置文件(/etc/squid.conf)

亚搏app官方网站 7

(4)启动服务并查看端口号(依次输入以下命令)

squid  -k 
parse         检查配置文件语法是否正确

squid 
-z                初始化缓存目录

squid                    启动squid服务

然后查看端口号,服务是否启动

亚搏app官方网站 8

3、搭建传统代理服务器,要求在内部linux服务器能够使用传统代理访问外部的web服务器。内部客户端最大允许下载的文件不能超过10MB,squid最大缓存的文件为4MB。内部客户端验证文件下载。

(1)修改主配置文件/etc/squid.conf ,添加配置项(内部客户端最大允许下载的文件不能超过10MB,squid最大缓存的文件为4MB)

亚搏app官方网站 9

(2)重新加载服务

squid  -k 
reconfigure

(3)开启网站服务器的httpd服务

亚搏app官方网站 10

(4)修改内部主机浏览器的设置,能够使用传统代理访问外部的web服务器。(注:本实验关闭了squid服务器的防火墙,如开启了防火墙请添加规则 iptables 
-I  INPUT  -p  tcp  –dport  3128  -j  ACCEPT

亚搏app官方网站 11

亚搏app官方网站 12

亚搏app官方网站 13

亚搏app官方网站 14

(5)在网站服务器上的httpd服务网页目录上新建一个文件(大于10
MB)

亚搏app官方网站 15

亚搏app官方网站 16

在内部主机测试

亚搏app官方网站 17

4、修改squid的主配置文件,搭建一台透明代理服务器,结合iptables的重定向策略,开启路由转发。验证内部客户端能否使用透明代理访问外部的web服务器。

(1)修改squid的主配置文件/etc/squid.conf ,使其能支持透明代理。

亚搏app官方网站 18

(2)重新加载服务

squid  -k 
reconfigure

(3)设置iptables的重定向策略

亚搏app官方网站 19

(4)开启路由转发功能,(/etc/sysctl.conf)

亚搏app官方网站 20

亚搏app官方网站 21

(5)关闭内部主机IE浏览器的局域网设置,并测试。

亚搏app官方网站 22

亚搏app官方网站 23

5、修改squid的主配置文件,设置ACL访问控制,要求内部客户端192.168.1.0网段在周一至周五的9:00—17:00才能使用代理服务器上网,其他时间不允许上网,并且禁止下 载.mp3,.avi,.rmvb的视频文件。针对某些目标地址建立黑名单,如 61.135.167.36
125.39.127.25

 修改squid服务器的时间,客户端验证是否能上网。

(1)修改squid主配置文件/etc/squid.conf 

亚搏app官方网站 24

(2)建立相应的ip地址名单

mkdir /etc/squid

cd /etc/squid

vim ipblock.list

亚搏app官方网站 25

(3)重新加载服务

squid -k 
reconfigure

(4)在内部主机上验证(因为squid服务器的时间满足要求,所以能访问)

亚搏app官方网站 26

可以修改squid服务器的时间,再次测试(注:如果删除了浏览器的数据还是能访问,就杀死squid进程再打开。)

亚搏app官方网站 27

亚搏app官方网站 28

6、在squid服务器上安装Squid日志分析软件sarg,进行相关的配置,并在客户端访问日志分析的网站。

(1)在squid服务器上建立yum仓库,使用yum方式安装

亚搏app官方网站 29

亚搏app官方网站 30

执行命令yum  -y install  gd  进行安装

(2)安装sarg,解包后编译安装

亚搏app官方网站 31

(3)配置

cd  /etc/sarg/

vim sarg.conf

亚搏app官方网站 32

亚搏app官方网站 33

亚搏app官方网站 34

(4)运行

亚搏app官方网站 35

并启用httpd服务

亚搏app官方网站 36

(5)在内部主机验证,在IE浏览器上输入

亚搏app官方网站 37

亚搏app官方网站 38

文章参考微信公众号:L宝宝聊IT

发表评论

电子邮件地址不会被公开。 必填项已用*标注