- 论坛徽章:
- 0
|
自己写个这个主要是针对网吧的.不过,也开了web/ftp/ssh.(网关linux服务器自身当然不会开,只是端口nat到内网.
以下仅是IPTABLE的规则,希望大家给点些意见,大家一起进步,高手不要笑话拉!
希望高手可以指出那里多多余的,那里还欠缺.(对了,防御DDOS,SYN的先不考虑拉.只是要内网都可以冲浪,游戏,聊天等!
eth0接外网 eth1接内网
vi /etc/rc.d/rc.local
echo "1" >; /pro/sys/net/ipv4/ip_forward
IPT="/sbin/iptables"
/sbin/modprobe ip_tables
/sbin/modprobe iptable_filter
/sbin/modprobe iptable_nat
/sbin/modprobe ip_nat_ftp
$IPT -F -t nat
$IPT -X
$IPT -Z
$IPT -P INPUT DROP \\*禁止所有进入的数据包
$IPT -P FORWARD DROP \\*禁止所有非本机地址的包
$IPT -P OUTPUT ACCEPT \\*允许所有出去的包
\\*如果是家中ADSL拨号可将以下两行改为 $IPT -t nat -A POSTROUTING -o ppp0 -s 192.168.0.0/24 -j MASQUERADE
$IPT -t nat -A POSTROUTING -o eth0 -s 192.168.0.0/24 -j MASQUERADE \\*将192.168.0.0/255.255.255.0这个网段所有客户机对外的访问转向到eth0上
$IPT -t nat -A POSTROUTING -o eth0 -s 192.168.1.0/24 -j MASQUERADE
$IPT -t nat -A PREROUTING -p udp -d 0.0.0.0/0 --dport 53 -j DNAT --to 61.134.1.4:53
$IPT -t nat -A PREROUTING -p udp -d 0.0.0.0/0 --dport 53 -j DNAT --to 61.134.1.9:53
$IPT -t nat -A PREROUTING -p udp -d 0.0.0.0/0 --dport 53 -j DNAT --to 202.100.4.15:53
$IPT -A INPUT -s 192.168.0.0/24 -j ACCEPT \\*允许所有从ETH0到 192.168.0.0/255.255.0.0的数据包
$IPT -A INPUT -s 192.168.1.0/24 -j ACCEPT
$IPT -A INPUT -p tcp --dport 22 -j ACCEPT \\*允许外网访问网关 22 端口 , 这样 才可以端口 再转向到内网
$IPT -A INPUT -p tcp --dport 20 -j ACCEPT
$IPT -A INPUT -p tcp --dport 21 -j ACCEPT
$IPT -A INPUT -p tcp --dport 80 -j ACCEPT
$IPT -t -nat -A PREROUTING -P tcp -d --dport 80 -i eth0 -j DNAT --to 内网IP:80 \\*端口转向
$IPT -t -nat -A PREROUTING -P tcp -d --dport 21 -i eth0 -j DNAT --to 内网IP:21
$IPT -t -nat -A PREROUTING -P tcp -d --dport 20 -i eth0 -j DNAT --to 内网IP:20
$Ipt -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPT -A INPUT -p icmp --icmp-type ! echo-request -j ACCEPT |
|