iptables:阻止 PC 上的所有常规输出(无服务器)

iptables:阻止 PC 上的所有常规输出(无服务器)

我想

-P INPUT DROP
-P FORWARD DROP
-P OUTPUT DROP

-A INPUT -i lo -j ACCEPT

-A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT

-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p tcp -m tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT
-A INPUT -p tcp -m tcp --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT

但是,互联网上的一切似乎都需要-P OUTPUT ACCEPT。否则什么都行不通。

--state NEW如果您不想调整服务器,是否还需要 INPUT?

答案1

我不完全明白你想做什么,但如果你只想允许访问 Internet 上的 TCP 端口 80,那么这对我来说是有效的:

-P INPUT DROP
-P FORWARD DROP
-P OUTPUT DROP

-A INPUT -i lo -j ACCEPT

-A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 80 -j ACCEPT

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

如果使用某些名称服务器,您可能还需要允许端口 53,否则您的浏览器将无法解析任何域名。

相关内容