- 论坛徽章:
- 0
|
CentOS 6.5 + Apache Traffic Server 4.2 架设了一个透明代理网关(有两块网卡:eth0 接内网,eth1 接外网),通过iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o eth1 -j MASQUERADE 和
iptables -t nat -A PREROUTING -s 192.168.1.0/24 -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8080 将内网的80转发到Apache Traffic Server 并且也能正常访问, 但有一个问题,一些未遵守国际标准也采用服务器端口为80来通信的软件就要出现问题,比如 千牛登陆的时候出现“timestamp过期”提示,QQ收发图片有问题等。
现有解决思路如下
第一、让iptables只将有效的http WEB数据包访问转发到Apache Traffic Server,其他的非http的80端口数据抛弃或者是直接转发
查阅知道得知可以通过两中方式实现:
1、layer7来实现,几次尝试iptables补丁安装都失败,对比了一下资料中自身操作的区别就是资料中layer7现在最新也就只有2.22版本,且只能支持系统内核为2.6.28及以前的版本, 而CentOS 6.5系统的内核版本已经是2.6.32,请问,是版本的问题吗?另外及时是以前的内核版本layer7也不是所有的内核都能用,如果我采用2.6.28内核的CentOS并且也正常安装上了layer7,用yun update 更新系统会让打好的补丁失效吗?
2、通过类似 iptables -t mangle -A PREROUTING -p tcp --dport 80 -j TPROXY --tproxy-mark 0x1/0x1 --on-port 8080的语句来实现,不知道是否有效?
第二、让Apache Traffic Server不缓存非标准http WEB数据包,不知道如何设置? |
|