当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 7 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : [测试]高手给看一下 本人的iptables配置还有什么不足
帖子发表于 : 2008-08-09 14:39 

注册: 2008-07-15 12:33
帖子: 3
送出感谢: 0 次
接收感谢: 0 次
高手给看一下 本人的iptables配置还有什么不足

代码:
#!/bin/sh
#
echo "Module loading...."
echo "enabling IP FORWARDING......"
echo "1" > /proc/sys/net/ipv4/ip_forward
echo "1">/proc/sys/net/ipv4/icmp_echo_ignore_all
echo "enabling iptables rules"

iptables -F
iptables -X
iptables -Z
iptables -F -t nat
iptables -X -t nat
iptables -Z -t nat
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
iptables -t nat -P OUTPUT     ACCEPT

iptables -A FORWARD -p tcp --dport 4444 -j DROP
iptables -A FORWARD -p udp --dport 4444 -j DROP
iptables -A FORWARD -p tcp --dport 445 -j DROP
iptables -A FORWARD -p udp --dport 445 -j DROP
iptables -A FORWARD -p tcp --dport 69 -j DROP
iptables -A FORWARD -p udp --dport 69 -j DROP
iptables -A FORWARD -p tcp --dport 135 -j DROP
iptables -A FORWARD -p udp --dport 135 -j DROP
iptables -A FORWARD -p tcp --dport 139 -j DROP
iptables -A FORWARD -p udp --dport 139 -j DROP
iptables -A FORWARD -p tcp --dport 3 -j DROP
iptables -A FORWARD -p udp --dport 3 -j DROP
iptables -A FORWARD -p tcp --dport 111 -j DROP
iptables -A FORWARD -p udp --dport 111 -j DROP
iptables -A FORWARD -p tcp --dport 587 -j DROP
iptables -A FORWARD -p udp --dport 587 -j DROP

#allow loopback access
iptables -A INPUT -p icmp -i lo -j ACCEPT
iptables -A OUTPUT -p icmp -o lo -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT

#allow ping LAN
iptables -A INPUT -p ALL -i eth1 -s 192.168.0.0/24 -j ACCEPT
iptables -A OUTPUT -p ALL -o eth1 -d 192.168.0.0/24 -j ACCEPT

#wan to lan
iptables -A INPUT -p ALL -i eth1 -s 192.168.0.0/24 -j ACCEPT
iptables -A INPUT -p ALL -i eth1 -s 192.168.0.0/24 -j ACCEPT

#deny local cheat
#iptables -A INPUT -i eth0 -s 192.168.0.0/16 -j DROP
iptables -A INPUT -i eth0 -s 10.0.0.0/8 -j DROP
iptables -A INPUT -i eth0 -s 172.16.0.0/12 -j DROP
iptables -A INPUT -i eth0 -s 127.0.0.0/8 -j DROP

#deny DHCP_packets from LAN
iptables -A INPUT -p udp -i eth1 --dport 67 --sport 68 -j DROP

#TCP gui'ze
iptables -A OUTPUT -o eth0 -p tcp -m state --state ESTABLISHED,NEW -j ACCEPT

#port to potr
iptables -A FORWARD -i eth1 -j ACCEPT

#wan to lan huixingfengbao
iptables -A INPUT -i eth0 -p tcp -m state --state ESTABLISHED,RELATED -j ACCEPT

#fengbaozuduan
iptables -A INPUT -m limit --limit 3/minute --limit-burst 3 -j LOG --log-level INFO --log-prefix "IPT INPUT packets died:"

#all ip sui'pian
iptables -A FORWARD -f -m limit --limit 100/s --limit-burst 100 -j ACCEPT

#255.255.255.255
iptables -A INPUT -s 255.255.255.255 -i eth0 -j DROP
iptables -A INPUT -s 224.0.0.0/224.0.0.0 -i eth0 -j DROP
iptables -A INPUT -d 0.0.0.0 -i eth0 -j DROP

#ICMP
iptables -A INPUT -p icmp --icmp-type echo-request -i eth0 -j DROP
#iptables -A FORWARD -p icmp -m limit --limit 1/s --limit-burst 10 -j ACCEPT

#ping lei'xing
#iptables -A INPUT -p icmp --icmp-type 8 -s 0/0 -j DROP
#iptables -A INPUT -p icmp --icmp-type 0 -s 0/0 -j ACCEPT


#DDOS
echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_all
iptables -A FORWARD -p tcp --syn -m limit --limit 1/s -j ACCEPT
iptables -A FORWARD -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/s -j ACCEPT
iptables -A FORWARD -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT
sysctl -w net.ipv4.tcp_syncookies=1 &>/dev/null
sysctl -w net.ipv4.netfilter.ip_conntrack_tcp_timeout_established=3800 &>/dev/null
echo "flags SYN,ACK,FIN,RST RST DDOS ......"

#SYN
iptables -N syn-flood
iptables -A INPUT -p tcp --syn -j syn-flood
iptables -A syn-flood -p tcp -m limit --limit 3/s --limit-burst 6 -j RETURN
iptables -A syn-flood -j REJECT

#TCP bad
iptables -A FORWARD -p TCP ! --syn -m state --state NEW -j LOG --log-prefix "New not syn:"
iptables -A FORWARD -p TCP ! --syn -m state --state NEW -j DROP

#drop www
#iptables -I FORWARD -d www.baidu.com -j DROP

# allow UDP
iptables -A FORWARD -p udp -d 192.168.0.0/24 -i eth0 -j ACCEPT

#MAC kongzhi
#iptables -t nat -I PREROUTING -m mac --mac-source 4C:00:10:D8:57:F3 -j DROP

#SSH
iptables -A INPUT -p tcp -i eth0 --dport 24681 -j ACCEPT

#http port 80
#iptables -A OUTPUT -o eth0 -p tcp -s 125.76.111.111 --sport 1024:65535 -d any/0 --dport 80 -j ACCEPT
#iptables -A INPUT -i eth0 -p tcp ! --syn -s any/0 --sport 80 -d 125.76.111.111 --dport 1024:65535 -j ACCEPT

#DNS
#iptables -A OUTPUT -o eth0 -p udp -s 125.76.111.111 --sport 1024:65535 -d any/0 --dport 53 -j ACCEPT
#iptables -A INPUT -i eth0 -p udp -s any/0 --sport 53 -d 125.76.111.111 --dport 1024:65535 -j ACCEPT
#iptables -A OUTPUT -o eth0 -p tcp -s 125.76.111.111 --sport 1024:65535 -d any/0 --dport 53 -j ACCEPT
#iptables -A INPUT -i eth0 -p tcp ! --syn -s any/0 --sport 53 -d 125.76.111.111 --dport 1024:65535 -j ACCEPT

#MASQUERADE
#iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

#SNAT
#iptables -t nat -A POSTROUTING -o eth0 -s 192.168.0.0/24 -j SNAT --to 125.76.111.111

#port ying'she
#iptables -t nat -A PREROUTING -d 125.76.111.111 -p tcp -m tcp --dport 5555 -j DNAT --to-destination 192.168.0.245:3389
#iptables -t nat -A POSTROUTING -d 192.168.0.245 -p tcp -m tcp --dport 3389 -j SNAT --to-source 192.168.0.250
#iptables -t nat -A PREROUTING -d 125.76.111.111 -p tcp -m tcp --dport 2121 -j DNAT --to-destination 192.168.3.253:21
#iptables -t nat -A POSTROUTING -d 192.168.3.253 -p tcp -m tcp --dport 21 -j SNAT --to-source 192.168.3.254
#iptables -t nat -A PREROUTING -d 125.76.111.111 -p tcp -m tcp --dport 2120 -j DNAT --to-destination 192.168.3.250:21
#iptables -t nat -A POSTROUTING -d 192.168.3.250 -p tcp -m tcp --dport 21 -j SNAT --to-source 192.168.3.254
#iptables -t nat -A PREROUTING -d 125.76.111.111 -p tcp -m tcp --dport 96 -j DNAT --to-destination 192.168.3.251:21
#iptables -t nat -A POSTROUTING -d 192.168.3.251 -p tcp -m tcp --dport 21 -j SNAT --to-source 192.168.3.254

[/i]


页首
 用户资料  
 
2 楼 
 文章标题 :
帖子发表于 : 2008-09-03 9:05 

注册: 2008-09-02 9:26
帖子: 2
送出感谢: 0 次
接收感谢: 0 次
好文。。。学习来的


页首
 用户资料  
 
3 楼 
 文章标题 :
帖子发表于 : 2008-09-03 9:16 
头像

注册: 2007-01-01 22:14
帖子: 644
送出感谢: 0 次
接收感谢: 0 次
export ICMP_TYPE="0 3 4 11 12 14 16 18"
for type in $ICMP_TYPE
do
iptables -A INPUT -i eth0 -p icmp --icmp-type $type -j ACCEPT
done

我更喜欢我ping通别人,别人 ping 不通我


_________________
ThinkPad SL400 DC
CPU:Intel® Core 2 Duo processor T5670
RAM:2x1GB,Dual
HARDDISK:Seagate 160G SATA
CD-ROM:COMBO


页首
 用户资料  
 
4 楼 
 文章标题 :
帖子发表于 : 2008-09-03 16:59 

注册: 2007-08-27 17:31
帖子: 445
送出感谢: 0 次
接收感谢: 1
filter表没有默认策略,(最好先禁止在开通)
应该丢弃不回应icmp封包(大量icmp回应信息会阻塞网络,你的icmp丢弃不完整)
OUTPUT 链的 echo-reply
FORWARD 链的 echo-requested
FORWARD 链的 echo-reply
这些都要DROP
防止ip Spoofing (禁止假冒内部地址包)
与防止网络扫描(可能会绕过防火墙)


_________________
你能学会世界上所有语言来叫一种鸟的名字,当你知道所有这些名字叫法后,却对这种鸟一无所知~
理查德-费曼


页首
 用户资料  
 
5 楼 
 文章标题 :
帖子发表于 : 2008-09-04 10:34 

注册: 2006-06-26 14:31
帖子: 40
地址: SZ
送出感谢: 0 次
接收感谢: 0 次
OUTPUT和FORWARD链要先 DROP,然后根据需要放行。


页首
 用户资料  
 
6 楼 
 文章标题 :
帖子发表于 : 2008-09-04 21:52 
头像

注册: 2006-09-13 23:59
帖子: 56
送出感谢: 0 次
接收感谢: 0 次
line6 : echo "1">/proc/sys/net/ipv4/icmp_echo_ignore_all
不是已经把icmp_echo_ignore_all 打开了,既然ping都不反应了,
那么后边的icmp设置不是都无所谓了!
再到后边
#DDOS
echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_all
怎么又把它关了?


页首
 用户资料  
 
7 楼 
 文章标题 : 乖乖这是什么防火墙,简直就是天书。
帖子发表于 : 2008-09-05 0:00 
头像

注册: 2007-04-10 14:51
帖子: 435
送出感谢: 1
接收感谢: 1
你开得端口也太多了吧。很多端口关掉就行了,干吗非练链写iptables的能力呢。
个人观点,仅供讨论。


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 7 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 3 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译