基于Linux内核的透明代理配置方案
来源:21IC 作者:—— 时间:2011-11-07 15:50
OK,squid设置结束了,下面我们开始配置iptables
可以用前面所提到的配置工具,但是我没有试过,所以是直接用iptables命令来做的。
可以man iptables来查看帮助
我们把iptables的设置命令存在一个脚本文件中,假设脚本文件名为firewall,然后将此文件存放在/etc/init.d中,并且在启动文件中运行此脚本。以下为操作步骤
1、touch /etc/init.d
2、vi /etc/init.d
加入以下内容:
#!/bin/sh
echo "Enabling IP Forwarding..."
echo 1 > /proc/sys/net/ipv4/ip_forward
echo "Starting iptables rules..."
#Refresh all chains
/sbin/iptables -F -t nat
iptables -t nat -A PREROUTING -i eth0 -p tcp -m tcp
--dport 80 -j REDIRECT --to-ports 3128
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o
ppp0 -j MASQUERADE
对于以上命令的解释如下:
/proc/sys/net/ipv4/ip_forward必须设置为1(默认是0)才可以使用路由功能。
/sbin/iptables -F -t nat将nat table中的所有现存规则清空。
eth0:为Linux机器中的网卡。
3128:为squid中默认的监听端口。
ppp0:为linux中的ADSL设备(在SuSE中为ppp0,在redhat中可能是dsl0)。
MASQUERADE:适用于拨号上网的服务器,因为没有静态IP地址,对于有静态IP的服务器,可以用SNAT --to-source ipadress来替代。
注:以上的命令没有涉及防火墙,请自行参考配置,以上命令也没有删除filter table中的规则,也就是如果以前设置过防火墙,那么不会受到影响。
3、chmod u+x firewall,更改文件属性,使其可以被执行
4、编辑/etc/init.d/boot.local文件,在最后加上/etc/init.d/firewall这一句,确保开机就执行此脚本。
注:SuSE中是boot.local,对于redhat,则需要编辑/etc/rc.d/rc.local文件。
5、运行firewall,规则立刻生效。
到此为止,所有配置结束。
上一篇:硅衬底LED芯片主要制造工艺
- •上半年我国平均每天生产芯片超过15亿块:高端芯片需求爆发2026-07-21
- •苹果又出手!300亿美元芯片大单砸向博通 美国工厂同步扩建2026-07-10
- •为了您的看球体验,小基站背后的芯片厂商拼了!2026-07-06
- •关键节点落地! 美国芯片关税迈入“第二阶段”2026-04-15
- •中东局势升级:一场正在逼近的全球芯片供应链危机2026-03-24
- •突发!三星9万人准备罢工:全球芯片要变天了?2026-03-18
- •芯片价格全面失控:最高暴涨70%,这一轮半导体周期不一样了2026-03-18
- •2026最硬科技!原子级3D成像揭示芯片内部“鼠咬”缺陷,芯片研发从此不同2026-03-06
- •芯片战再升级!美政府采购禁令来袭,SIA强烈发声反对2026-03-05
- •阿里“造芯”走到关键一步?平头哥或冲击IPO2026-01-26






