分享
 
 
 

netfilter和squid配合创建透明代理的问题讨论

王朝other·作者佚名  2008-05-18
窄屏简体版  字體: |||超大  

最近常在网上看到很多朋友假设透明代理碰到问题,一个常见的问题是:

1.IPtables(netfilter)以配置好,Squid也配置好了;

2.不通过Squid可以正常访问网页;

3.或者清空iptables规则,在客户端配置代理也能访问;

4.一旦同时启用iptables,Squid,同时把80的流量转发到代理端口时就出现问题,网页无法访问;而其他的应用正常.

为什么?其实我想可能是很多朋友对IPtables还没有个透彻的理解,下面就和大家一起讨论一下:

一、iptables和netfilter的区别

iptables使用来配置netfilter的工具,只是一个人机界面,真正工作时是netfilter在根据规则来对流量进行过滤。

二、流量如何通过netfilter?

不同的流量,由于其目标地址的不同,其穿过的netfilter链也是不同的,基本上可以分为下面三种情况:

1.输入流:目标地址为本机的数据包

2.输出流:源地址为本机的数据包

3.转发流:目标和源均不是本机,但需要本机的转发

输入流的链路径:

线路->接口->mangle.PREROUTING->nat.PREROUTING->[routing]->mangle.INPUT->filter.INPUT->[本地处理]

输出流的链路径:

应用程序->[routing]->mangle.OUTPUT->nat.OUTPUT->filter.OUTPUT->mangle.POSTROUTING->nat.POSTROUTING->接口->线路

转发流的链路径:

线路->接口->mangle.PREROUTING->nat.PREROUTING->[routing]-> mangle.FORWARD->filter.FORWARD->mangle.POSTROUTING-> nat.POSTROUTING->接口->线路

[routing]指本地地路由决策。

以上为www.netfilter.org网站对IP数据包如何流过linux路由器地描述,由于本人对以前版本地IPchain及IPfw了解不多,因此这里仅限于对netfilter/iptables的讨论。

从上面的路径链可以看到,三种数据流穿过的规则链是有区别的。下面就让我们讨论一下iptables应该如何配合squid.

三、直接转发与使用SQUID的区别

不管是直接转发,还是通过NAT接入internet,数据包都是在第三层进行处理,此时数据流是转发流,不会穿过filter.INPUT和filter.OUTPUT链。

而squid是在应用层来完成代理工作的,它将介入internet信息的访问过程,分别和内部客户机、外部服务器建立数据连接,因此数据流将是输入流和输出流也必将穿越filter.INPUT和filter.OUTPUT链。因此,要让Squid正常为客户提供代理服务,我们必须在INPUT和OUTPUT链中增加相应设置。而很多时候我们都把INPUT和OUTPUT链的缺省规则设置为DROP。

这就是出现以上故障现象的主要原因。

看到这里我想大多数朋友应该知道如何来配置INPUT和OUTPUT规则链了。实际上在这个链中只要具备了满足如下规则的条目,就可以达到我们的目的。

1.允许内部机器到本机代理端口的连接;

2.允许本机到外部世界的连接。

典型的,在常用配置中(缺省的链策略为DROP)增加规则如下:

iptables -A INPUT -i $INTERNAL -p tcp --dport 3128 -j ACCEPT

iptables -A INPUT -o $INTERNAL -m state --state RELATIVE,ESTABLISHED -j ACCEPT

iptables -A INPUT -i $INTERNAL -m state --state RELATIVE,ESTABLISHED -j ACCEPT

iptables -A OUTPUT -o $EXTERNAL -m state --state NEW,RELATIVE,ESTABLISHED -j ACCEPT

以上为本人查阅相关资料并分析和总结所得,如有错误的地方,欢迎大家指正。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有