使用默认策略vs -j DROP丢弃不匹配的数据包是否有区别?
喜欢:
iptables -P INPUT DROP iptables -A INPUT --dport 80 -j ACCEPT
VS
iptables -A INPUT --dport 80 -j ACCEPT iptables -A INPUT -j DROP
我关心的原因是因为我不能创build日志链,并将其作为默认策略,因此我需要使用第二个示例。
从技术angular度来看,不会。
但Sirex是相当正确的,因为如果在切换表格默认规则时忘记了一些重要的东西,会有点痛苦。
花费一些时间与IPTables后,你可能会发现一个偏好,并围绕你的环境build立你的系统。
是。 如果您使用DROP策略,然后通过SSH进行连接并刷新表( iptables -F ),则您将自己locking,因为默认策略不会刷新。
我已经在一个远程系统上做了这个。 它受伤了。
(其他的教训,如果你想摆脱一段时间的防火墙,使用service iptables stop ,而不是iptables -F + service iptables reload )
默认策略可能更安全,但是更容易pipe理。 你不能忘记把它添加到最后。
默认的策略是相当有限的,但是要做一个很好的后盾来确保未处理的数据包得到正确的处理。
如果你需要(想)logging这些数据包,你需要一个最终的规则。 这可以是一个logging和应用政策的链条。 您也可以login并让策略处理它。
考虑这些政策方法和最终的政策规则。
对于那些在几个小时前就需要这些信息的人来说,这个话题可能还有其他的一些东西。
后一种方式:
iptables -A INPUT --dport 80 -j ACCEPT iptables -A INPUT -j DROP
不会让你稍后追加一个规则(因为附加的规则将出现在通用放置规则之后,因此不起作用),所以你必须插入规则并显式声明所需的位置:
iptables -I INPUT 1 --dport 8080 -j ACCEPT
代替
iptables -A INPUT --dport 80 -j ACCEPT
根据你的需要,它可能会帮助安全一点点,要求你或其他什么后来增加规则真正通过现有的规则,而不是像往常一样追加它。
这知道我昨天已经赚了20分钟,为什么我的新安装的服务不会响应,即使一切正常运行。