浏览互联网的最小 iptables 规则是什么?

浏览互联网的最小 iptables 规则是什么?

我正在尝试为我的 Linux iptables 规则文件设置最少的规则,以便能够浏览互联网。

这是我所做的:

* filter

-A OUTPUT -p tcp --dport 80 -j ACCEPT
-A OUTPUT -p tcp --dport 443 -j ACCEPT
-A OUTPUT -p udp --dport 53 -j ACCEPT

COMMIT

由于这些规则,我无法上网。

我注意到当我输入时-A INPUT -j ACCEPT,它可以工作,但我不明白为什么。那么我需要什么输入/输出端口来上网?

非常感谢。问候

编辑: 还是不行。

这是我的iptables -L

Chain INPUT (policy DROP)
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED

Chain FORWARD (policy DROP)
blank

Chain OUTPUT (Policy ACCEPT)
ACCEPT all -- anywhere anywhere

但是,如果我添加-A INPUT -j ACCEPT,我就可以上网了。所以 INPUT 中应该有其他东西阻止了它。

答案1

您还需要允许从远程服务器返回的流量。您的输入链需要允许这些响应;连接状态模块可以确保允许这些响应。

-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

答案2

为什么您觉得有必要规范出站连接?

OUTPUT 表管理 OUTBOUND 数据包,INPUT 表管理入站数据包。

如果您希望保护您的工作站/服务器,您应该关注 INPUT 规则并使用默认的“DROP”规则和“RELATED,ESTABLISHED”规则,如下所示:

 /sbin/iptables -P INPUT DROP
 iptables -A INPUT -p tcp -m state --state ESTABLISHED,RELATED -j ACCEPT

这将允许您打开其他特定端口,同时阻止大多数流量。

答案3

尝试在 /etc/sysconfig/iptables (你的 IPtables 规则文件) 中添加此行

-A 输入 -m 状态 --状态相关,已建立 -j 接受

有时候 iptables-save 对我来说不起作用,它显示通过重新启动 iptables 服务可以保存并将其返回到上一阶段

相关内容