iptables 使用中遇到的问题

iptables 使用中遇到的

1. 注意指定包的流向
shell > iptables -P INPUT DROP
shell > iptables A INPUT -p icmp -j ACCEPT
shell > ping 192.168.0.1 [timeout]
shell > ping 192.168.0.1 [timeout]

shell > iptables A INPUT -p icmp -j ACCEPT
shell > iptables A INPUT -i eth1 -p icmp -j ACCEPT
win cmd > ping 192.168.0.1  [ok]
shell > ping 192.168.0.1 [timeout]

shell > iptables -A INPUT -i lo -p icmp -j ACCEPT
win cmd > ping 192.168.0.1  [ok]
shell > ping 192.168.0.1 [ok]

比如
netstat -ntal
tcp        0      0 192.168.0.1:53          0.0.0.0:*               LISTEN
tcp        0      0 219.140.183.152:53      0.0.0.0:*               LISTEN

INPUT POLICY 为 DROP
iptables -A INPUT -i eth1 -p tcp --dport domain -j ACCEPT
同上 ,  与eth1相连的机器的DNS请求可以得到回应 但是
host www.163.com localhost
找不到DNS server
iptables -A INPUT -i lo -p tcp --dport domain -j ACCEPT [ OK ]

所以 一般会这样定义一条规则

shell > iptables -I INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT [这种包最多所以放在最前面]
shell > iptables -A INPUT -i lo -m state --state NEW -j ACCEPT  [匹配本机主动发出去的包]


2. 规则中I 与 A 的区别
iptables -A INPUT -s 192.168.0.0/24 -p icmp -j DROP
iptables -A INPUT -s 192.168.0.127/24 -p icmp -j ACCEPT
pc127 > ping 192.168.0.1 [timeout]

iptables -A INPUT -s 192.168.0.0/24 -p icmp -j DROP
iptables -I INPUT -s 192.168.0.127/24 -p icmp -j ACCEPT
pc127 > ping 192.168.0.1 [OK]


3. 使用limit
iptables -A INPUT -i eth1 -p icmp --icmp-typp echo-request -m limit --limit 5/minute -j ACCEPT
令牌桶算发 初始就有5个令牌 所以开始时看不出来limit

iptables -A INPUT -i eth1 -p icmp --icmp-type echo-request -m limit --limit-burst 10 --limit 2/second -j ACCEPT
在超过10个包后 每秒2个包

iptables -A INPUT -i eth0 -p icmp --icmp-type echo-request -m limit --limit-burst 10 --limit 2/second -j ACCEPT
最好在这个包的后面加上
iptables -A INPUT -i eth0 -p icmp DROP 
虽然默认规则是DROP,这里添加这条规则可以避免不是echo-request的icmp包还要继续走后面的规则 , 在定义其他规则的时候一样需要

这样做

 

4. 清空所有规则
iptables -Z  清零
iptables -X  清除所有自定义的chains
iptables -F  清除所有的rule
iptables -t nat -Z 
iptables -t nat -X 
iptables -t nat -F 
.....mangle...
看起来好像清除了所有规则  但是  上面的命令并不改变默认规则 所以 需要自己再定义默认的POLICY
iptables -P INPUT ACCEPT
....


5. 使用time动态规则 需要补丁
iptables -A INPUT -i eth0 -p tcp --dport 22 -m time --timestart 22:00 --timestop 23:00 --days Mon --datestart

2005:12:1:00:00 -j ACCEPT
iptables -A INPUT -i eth0 -p tcp --dport 22 -j DROP
051201开始每个星期一的晚上10到11点从eth0可以连ssh

<script type=text/javascript charset=utf-8 src="http://static.bshare.cn/b/buttonLite.js#style=-1&uuid=&pophcol=3&lang=zh"></script> <script type=text/javascript charset=utf-8 src="http://static.bshare.cn/b/bshareC0.js"></script>
阅读(780) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~
评论热议
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值