为什么在iptables顶部和底部有一个“任何”的规则?

希望有人能为我解决这个问题。 我在RHEL7.1,我注意到,在iptables中,我有一个规则,允许任何传入。 我运行这个命令来获取行号和接口只是为了确保:

iptables --line-numbers -L -v --verbose 

这是输出。 (仅限第一行)

 1 30M 2931M ACCEPT all -- any any anywhere anywhere state RELATED,ESTABLISHED 

这是来自input链。 现在这是input链的最后一行:

 42 243K 22M DROP all -- any any anywhere anywhere 

现在,我在input链之间也有很多规则。 但是我不明白为什么我甚至需要在最顶端的“任何”规则。 这不是打败了iptables运行的目的吗? 我在这里有一个错误configuration的防火墙吗?

第一条规则只接受RELATED和ESTABLISHED连接,而不是新连接。 你有这个规则可能是因为你阻止了一切,只是允许一些服务,如HTTP,DNS等。最后,一切不符合任何以前的规则将被丢弃。