如何阻止除networkingstream量之外的所有stream量?

我写过这样的规则:

iptables -P INPUT DROP iptables -P OUTPUT DROP iptables -P FORWARD DROP iptables -A OUTPUT -i eth0 -p tcp --dport 80 -j ACCEPT 

接下来我该做什么?

在您应用heikogerlach向您展示的规则之后, 以下是一个有用的链接,可以帮助您了解未来的情况,从而了解自己在做什么。

  • Quick HOWTO,Ch14:Linux防火墙使用iptables
  • 关于netfilter / iptables项目的文档
  • Netfilter IPTables Mini Howto

基本上,要回答你在评论中提出的问题,你需要这个规则:

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

这样传入的数据将被允许​​进入系统发送的数据包 。否则,除了端口80之外,这个盒子将不能接收任何数据。

注意:你还必须告诉我们一些额外的…你想阻止所有访问,除了传入和传出的networking,或只有传入或只传出? 你想允许什么stream量?

现在,您可以将数据包从您的计算机发送到目标端口为80的另一个数据包。您必须允许来自远程计算机的响应,并且也希望收到错误。

 iptables -P INPUT DROP iptables -P OUTPUT DROP iptables -P FORWARD DROP iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -A OUTPUT -m state --state NEW -p tcp --dport 80 -j ACCEPT iptables -A OUTPUT -m state --state NEW -p tcp --dport 443 -j ACCEPT 

您需要使用内核模块ip_conntrack进行连接跟踪:

 modprobe ip_conntrack