基于中软Linux实现代理服务器与防火墙(1)

2009-05-13 00:57:31来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折


作者:李宇

 #!/bin/bash
 #proxyandfirwall
 #定义变量
 EXT_IFACE=eth0
 EXT_ADDR=192.9.100.8
 INT_IFACE=eth1
 INT_ADDR=192.168.0.0/24
 Manager_Addr=192.168.0.3/32

 #初始化设置
 serviceiptablesstop
 iptables-F
 iptables-tnat-F
 iptables-X
 iptables-tnat-X
 iptables-Z
 iptables-tnat-Z

 iptables-PINPUTDROP
 iptables-POUTPUTDROP
 iptables-PFORWARDDROP
 iptables-tnat-PPOSTROUTINGDROP

 #启动模块
 cd/lib/modules/2.4.3-3/kernel/net/ipv4/netfilter
 modprobeip_conntrack_ftp
 modprobeip_nat_ftp
 cd/

 #设置核心参数

 ##避免pingofdeath攻击
 echo1>/proc/sys/net/ipv4/icmp_echo_ignore_all
 ##禁止广播回应(可选)
 #echo1>/proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
##防止源路由攻击
echo0>/proc/sys/net/ipv4/conf/all/accept_source_route
##不接受重定向的icmp数据包
#echo0>/proc/sys/net/ipv4/conf/all/accept_redirects
##防止IP欺骗
forinterfacein/proc/sys/net/ipv4/conf/*/rp_filter;do
/bin/echo1>${interface}
done
##禁止IP转发(在配置防火墙时,建议用户先关闭数据包的转发功能)
echo0>/proc/sys/net/ipv4/ip_forward
#IP伪装
iptables-tnat-APOSTROUTING-s$INT_ADDR-o$EXT_IFACE-jMASQUERADE
#定义forward链规则
iptables-AFORWARD-mstate--stateINVALID-jDROP
iptables-AFORWARD-i$INT_IFACE-o$EXT_IFACE-s$INT_ADDR-mstate--state
RELATED,NEW,ESTABLISHED-jACCEPT
#iptables-AFORWARD-i$INT_IFACE-s192.168.0.3/32-mmac--mac-source
00:D0:59:08:5f:23-o$EXT_IFACE-jACCEPT(可以使用该方法实现IP地址与物理地址的捆绑)
iptables-AFORWARD-i$EXT_IFACE-o$INT_IFACE-d$INT_ADDR-mstate--state
RELATED,ESTABLISHED-jACCEPT
#对包碎片的限制(会影响代理服务器的性能)
#iptables-AFORWARD-f-mlimit--limit100/s--limit-burst100-jACCEPT
#对外部访问该防火墙作的限制
iptables-AINPUT-i$EXT_IFACE-mstate--stateESTABLISHED,RELATED-jACCEPT
iptables-AINPUT-i$EXT_IFACE-ptcp!--syn-jACCEPT
#对内部用户访问防火墙的限制
iptables-AINPUT-i$INT_IFACE-picmp-jDROP#(可以对其他协议做限制)
#...........
#允许管理员对防火墙的操作
iptables-AINPUT-s$Manager_Addr-i$INT_IFACE-ptcp--dport3000-jACCEPT
iptables-AINPUT-s$Manager_Addr-i$INT_IFACE-ptcp--dport22-jACCEPT
iptables-AOUTPUT-d$Manager_Addr-o$INT_IFACE-mstate--stateESTABLISHED
-jACCEPT
#允许发送的数据包(fromgateway)
iptables-AOUTPUT-o$EXT_IFACE-jACCEPT

#允许IP数据包转发
echo1>/proc/sys/net/ipv4/ip_forward

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:搭建Linux下RADIUS服务器(2)

下一篇:基于中软Linux实现代理服务器与防火墙(2)

热门词条
热门标签