Linux iptables被拒绝 – 如何启用它?
发布时间:2020-12-13 18:04:16 所属栏目:Linux 来源:网络整理
导读:所以我的网络中的客户端通过我的计算机与arpspoof连接到路由器.当我知道要停止数据包转发时,我执行: iptables -A FORWARD -j REJECT 这是我的预期工作.但当我尝试做类似的事情时: iptables -A FORWARD -j ACCEPT 我无法像开始那样让数据包通过. 我做错了什
所以我的网络中的客户端通过我的计算机与arpspoof连接到路由器.当我知道要停止数据包转发时,我执行:
iptables -A FORWARD -j REJECT 这是我的预期工作.但当我尝试做类似的事情时: iptables -A FORWARD -j ACCEPT 我无法像开始那样让数据包通过. 我做错了什么或者我还应该使用与“接受”不同的任何其他论点吗? 解决方法
IPtables有一个规则列表,对于每个数据包,它按顺序检查规则列表.一旦找到匹配数据包的规则并指定策略(ACCEPT,REJECT,DROP),就确定匹配数据包的命运;没有更多的规则被审查.
这意味着您运行命令的顺序非常重要.当您使用iptables -A时,您将规则添加到规则列表的末尾,因此最终会得到如下所示的规则列表: Chain FORWARD (policy ACCEPT) target prot opt source destination REJECT all -- anywhere anywhere reject-with icmp-host-prohibited ACCEPT all -- anywhere anywhere 由于REJECT规则在ACCEPT规则之前,它首先被触发,因此不会发生转发. 因此,您需要删除REJECTrule而不是添加ACCEPT规则.要删除REJECT规则,请运行 iptables -D FORWARD -j REJECT 有关更多信息,请阅读iptables联机帮助页. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |