42.部署Squid代理服务
admin
2023-03-18 00:00:53
0

Squid代理服务器

Squid代理服务器工作在应用层,主要提供缓存加速,应用层过滤控制等功能。

Squid代理的工作机制:

当客户机通过代理来请求web页面时,指定的代理服务器会先检查自己的缓存,如果缓存中有数据则直接反馈给客户机,如果没有则由代理服务器向internet发送访问请求,然后返回web页面时,先缓存起来,然后反馈给客户机。

Squid代理的基本类型:

传统代理:普通的代理方式,客户机需手动指定代理地址和工作端口

透明代理:客户机不需要指定代理地址和工作端口,而是通过默认路由,防火墙策略将web访问重定向交给代理服务器处理

搭建squid代理服务器:

编译安装squid

# tar xzvf squid-3.4.6.tar.gz

# cd squid-3.4.6

#./configure --prefix=/usr/local/squid --sysconfdir=/usr/local/squid/etc --enable-arp-acl --enable-linux-netfilter --enable-linux-tproxy --enable-async-io=100 --enable-err-language="Simplify_Chinese" --enable-underscore --enable-poll --enable-gnregex

注释:

--prefix指定安装路径

--sysconfdir指定配置文件路径

--enable-arp-acl 可以在规则中设置直接通过客户端MAC进行管理,防止客户端使用IP欺骗

--enable-linux-netfilter可以使用iptables的内核过滤

--enable-linux-tproxy支持透明模式

--enable-async-io异步I/O,提升存储性能,指定缓存空间大小

--enable-err-language错误信息显示的语言

--enable-underscore允许URL中有下划线

--enable-poll使用Poll模式,提升性能

--enable-gnregex使用GNU正则表达式

#make && make install

创建命令链接文件,使命令方便调用

#ln -s /usr/local/squid/sbin/* /usr/local/sbin/

创建用户和组,授予安装目录相关权限

#useradd -M -s /sbin/nologin squid

#chown  -R squid.squid /usr/local/squid/var

#vim /usr/local/squid/etc/squid.conf

visible_hostname ren

coredump_dir /usr/local/squid/var/cache/squid

cache_dir cache_effective_user squid

cache_effective_group squid ufs /usr/local/squid/var/cache/squid 100 16 256

cache_effective_user squid

cache_effective_group squid

Cache mem 512MB

http_port 1.1.1.0/24:3128 transparent

注释

visible_hostname给一个主机名

coredump_dir表示缓存的文件位置

cache_effective_group squid ufs指定缓存文件的大小

cache_effective_user 指定运行squid程序缓存的用户

cache_effective_group squid指定运行squid程序缓存的组

Cache mem 在物理内存中可用的值

http_port 1.1.1.0/24:3128 transparent :设置该网段让其支持透明代理

初始化squid代理

#squid -k parse

# squid -z

启动squid代理

#squid

代理实现方式:

传统代理:在客户机的浏览器中输入要代理的地址端口

透明代理:修改配置文件让其支持透明代理,然后通过iptables防火墙将规则重定向到代理服务器中即可,动作:REDIRECT

例:#iptables -t nat -A PREROUTING -i eth2 -s 1.1.1.0/24 -p tcp --dport 80 -j REDIRECT --to 3128

#iptables -t nat -A PREROUTING -i eth2 -s 1.1.1.0/24 -p tcp --dport 443 -j REDIRECT --to 3128

#unset  HTTP_PROXY HTTPS_PROXY

ACL访问控制

我们可以通过squid定义自己的访问控制列表,格式:acl 列表名称 列表类型 列表内容

常用的访问控制列表里类型

列表类型

列表内容

含义

Src

192.168.1.1

192.168.1.0/24

192.168.1.1-192.168.1.10

基于源IP地址,网段,IP地址范围过滤

Dst

1.1.1.1

1.1.1.0/24

www.a.com

基于目标IP地址,网段,主机名过滤

Port

80  443  8080  21  20

基于目标端口过滤

Dstdomain

.qq.com

基于目标域过滤

Time

MTWHF 8:30-17:30

基于星期,M表示星期一,T表示星期二,W表示星期三,H表示星期四,F表示星期五

Maxconm

20

每个客户机的并发连接数

Url_regex

Url_regex -i ^a://

目标资源的URL地址,-i 表示忽略大小写

Urlpath_regex

Urlpath_regex -i \.mp3$

目标资源的整个URL路径,-i表示忽略大小写

例:#vim /etc/squid.conf               

Acl xiao url_regex -i ^http://  

http_access deny MYLAN xiao 表示只要是http//开头的URL都拒绝访问

 


相关内容

热门资讯

ICC逮捕令致内塔尼亚胡出行受... 【环球网报道】据以色列《新消息报》网站26日报道,由于国际刑事法院(ICC)2024年就以色列在巴勒...
“罗永浩怒斥电视机厂商”戳中了... 7月25日晚,罗永浩发文怒斥当下电视机的产品设计。据都市快报报道,罗永浩表示,他为家中老人换了两次电...
各地各部门坚持人民至上筑牢防汛... 新华社北京7月25日电 题:风雨同舟映初心——各地各部门坚持人民至上筑牢防汛抗洪坚实堤坝新华社记者当...
法院回应LV起诉地产开发商 7月26日,厦门市湖里区人民法院发布情况通报,网传案情“路易威登公司起诉地产开发商,因楼盘外立面四叶...
携程的问题不仅在于垄断,更在于... 国内平台科技企业一般都是通过向B端收费、抽佣获利,尽量给消费者创造一个比较清爽的使用环境。携程算是最...
海信电视用遥控器关闭后打不开 原因可能是遥控器的电池没有装好或者是没电了,需要重新安装一下电池或者更换新的电池试一试;原因可能是电...
电视机突然没电源打不开了 有可能是电视开关的电源线断了;可能是电视在使用时短路;可能是电源插头插座松动;可能是电视内部零件接触...
电热水器下面那个小龙头漏水是怎... 电热水器下面那个小龙头漏水是怎么回事?1、因为安全阀发生了故障或者是已经被损坏了,就会有漏水的现象;...
回答下电脑桌面一片空白怎么恢复 电脑桌面上如果是一片空白,那说明您的电脑图标被隐藏了,想要恢复就要按照如下的三个步骤去操作才行。 第...
澳总理要找特朗普“理论”关税:... 当地时间7月26日,澳大利亚总理阿尔巴尼斯表示,他将直接向美国总统特朗普提出抗议,反对美国新近宣布的...