如何通过一个网络接口阻止所有传入请求?

如何通过一个网络接口阻止所有传入请求?

假设我有一台 Linux 服务器作为从 LAN 到 WAN 的路由器。出于安全问题,我不希望任何传入的 WAN 请求。那么我应该如何阻止通过 WAN 接口的所有传入请求,但不限制 LAN 用户的正常互联网活动?

我应该使用哪个应用程序?(iptables?)。如果我关闭所有传入流量,哪项服务会中断?

答案1

如果您确实想阻止来自 WAN(或 Internet)的所有传入流量,您可以简单地添加如下规则:

$ iptables -A INPUT -i eth0 -j DROP

假设eth0是 WAN 接口。这足以阻止所有传入流量。但是,您需要允许所有相关/已建立的连接能够从 WAN/Internet 请求某些服务。因此,您需要一条规则,例如:

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

当然,ACCEPT规则应该添加到DROP规则之前。这样做将阻止您在网络内托管任何服务。

答案2

iptables -A FORWARD -i eth0 -j DROP

不会阻止传入流量。您应该在INPUT链上添加规则,例如

iptables -A INPUT -i eth0 -j DROP

相关内容