如何在 IPtables 中允许浏览器?

如何在 IPtables 中允许浏览器?

我这样配置了我的 iptables:

Chain INPUT (policy DROP)
target     prot opt source               destination
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:ssh
ACCEPT     udp  --  anywhere             anywhere             udp dpt:ssh
ACCEPT     all  --  anywhere             anywhere //(this is loopback)

Chain FORWARD (policy DROP)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

据我所知,浏览器应该可以正常工作,因为浏览器开始浏览 OUTPUT,它正在接受所有内容,但它不起作用。我哪里犯了错误?

我的第二个问题是,当我添加环回规则(iptables -A INPUT -i lo -j ACCEPT)时,它在视觉上看起来像一条接受来自任何地方的流量而不仅仅是环回的通用规则,这非常令人困惑,如果我不知道它是环回规则,有什么方法可以判断它是环回规则吗?

谢谢。

答案1

完整的 iptables1 规则将是

删除当前规则和链iptables

sudo iptables --flush
sudo iptables --delete-chain

允许环回

sudo iptables -A INPUT -i lo -j ACCEPT
sudo iptables -A OUTPUT -o lo -j ACCEPT

允许已建立的连接

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

允许SSH或一些不同的TCP端口

sudo iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT

允许UDP端口22

sudo iptables -A INPUT -m state --state NEW -p udp --dport 22 -j ACCEPT

默认策略

sudo iptables -P INPUT DROP
sudo iptables -P OUTPUT ACCEPT

节省

sudo iptables-save

就是这样了。我想:)

相关内容