Squid代理服务器配置与部署

代理服务器

squid服务端

主配置文件:/etc/squid/squid.conf

默认监听端口:TCP 3128

默认访问日志:/var/log/squid/access.log

常用配置

http_port  3128     

access_log  /var/log/squid/access.log squid

cache_mem  64MB    程序本身使用内存大小

cache_dir ufs/var/spool/squid 100 16 256  缓存目录

100 缓存文件最大100M   16 1级子目录个数   256 2级子目录个数

visible_hostname proxy.benet.com    显示名 自己添加

dns_testnames  www.google.comwww.163.com

maximum_object_size 4096 KB   单个文件最大缓存大小

reply_body_max_size 10 MB    外网用户最大下载大小

代理的基本类型:

传统代理:适用于internet,需明确指定服务端

透明代理:适用于共享上网网关,不需指定服务端

反向代理:位于网站前端,代理web接收客户端请求

使用代理的好处:

提高web访问速度

隐藏客户机的真实IP地址

传统代理:

标准代理服务器必须在每一个内部主机的浏览器上明确指明代理服务器的IP地址和端口号

实验:1个内网,1个外网,1个网关

内网机:route add default gw 192.168.4.100(网关内网口)(实验环境可不做)

代理服务器(网关机): 安装squid

vim /etc/squid/squid.conf

visible_hostname proxy.zjn.com  

service squid start

vim /etc/sysctl.conf

net.ipv4.ip.forword=1

sysctl -p

外网机搭个网站,内网访问外网,图形界面下代理写网关机内网口地址 3128

字符界面下: yum -y install elinks

vim /etc/profile

HTTP_PROXY=http://192.168.4.100:3128

export HTTP_PROXY

source /etc/profile

elinks 200.200.4.1

代理ftp:

FTP_PROXY=ftp://.....

export FTP_PROXY

不想代理某地址,想直接访问

NO_PROXY=...ip..

透明代理:

透明代理服务器不需指明代理服务器的IP地址和端口号,该服务器阻断网络通信,并且过滤出访问外网的http流量,对于linux系统来说,透明代理服务器使用iptables或者ipchains实现。其余操作和标准代理服务器相同

实验:

代理服务器(网关机):

vim /etc/squid/squid.conf

http_port 192.168.4.100:3128 transparent

当用户访问3128端口时跳到192.168.4.100地址

visible_hostname proxy.xdl.com

iptables -t nat -APREROUTING -s 192.168.4.0/24 -i eth0 -p tcp --dport 80 -j      REDIRECT --to-ports 3128

防火墙规则,跳转端口

service squid reload

外网机搭网站,内网机清掉上次的配置,然后访问外网网站IP

反向代理:


反向代理服务器位于本地web服务器和internet之间,处理所有对web服务器的请求,组织web服务器和internet的直接通信,这种方式通过降低向web服务器的请求数降低了web服务器的负载

实验:2个内网机,1个网关机(代理服务器),1个外网机

2个内网机分别搭网站,然后将网关指向网关机内网口IP

route add default gw192.168.4.100

网关机:安装squid

vim /etc/squid/squid.conf

http_access allowall (deny 改为 allow)

http_port 200.200.4.100:80 vhost

cache_peer 192.168.4.2 parent 80 0 origin server round-robin  规则列表

cache_peer 192.168.4.1 parent 80 0 origin server round-robin

visible_hostname www.zjn.com


service squid start

vim /etc/sysctl.conf

net.ipv4.ip_forword= 1

sysctl -p

外网访问网关外网口地址测试


ACL(Access ControlList,访问控制列表):

根据源地址、目标URL、文件类型等定义列表

acl  列表名称  列表类型  列表内容 。。。

acl  aa  src  192.168.1.0/24

acl  all src  0.0.0.0/0.0.0.0    任意源地址

acl  MYLAN src 192.168.1.0/24 192.168.4.0/24  2个网段

acl  WORKTIME time MTWHF 08:30-17:30   工作日

针对已定义的acl列表进行限制

http_access  allow或deny   列表名称 。。。

http_access  allow aa

http_access  allow MYLAN WORKTIME

http_access  deny all

ACL控制规则:

1.规则是从上至下匹配

2.默认拒绝未匹配的IP地址 http_access deny all

3.没有http_access时,默认拒绝访问代理服务器

4.有http_access,但没有匹配项时,默认采取与最后一条相反的操作


 

猜你喜欢

转载自blog.csdn.net/weixin_35815578/article/details/61200876