我有一个通用的 Linux 家用路由器。我可以通过 telnet 到控制台来更改其上的 iptables。目前,它设置为使用称为 DMZ 服务器的东西将所有传入连接转发到我内部网络上的机器。此设置在家用路由器上非常常见。
它在 LAN 接口上打开了两个端口(端口 80 和端口 23)。这些端口分别用于使用 http 和 telnet 对其进行配置。如果通过 WAN 接口访问,这两个端口都显示为已过滤(无响应、超时)。
如果从 WAN 接口访问这些端口,我应该添加(和/或删除)哪些 iptables 规则以使路由器能够将端口 80(和 23)转发到“DMZ”服务器,并且如果从 LAN 接口访问,则保持这些端口可访问路由器配置?
答案1
iptables
有三个主要过滤表:输入,输出和转发。
下面的命令告诉 iptables 为特定接口(在您的情况下可能是 br0)向 INPUT 表添加(-A)一条规则,然后告诉 iptables 允许通过该端口(-j ACCEPT)在目标端口 80(您的服务器)上进行任何源端口和 ip 连接。
iptables -A INPUT -i (name of your wan side interface here - br0/eth1, etc.) --dport 80 -j ACCEPT
下面的命令告诉 iptables 为特定接口(在您的情况下可能是 br1)向 INPUT 表添加(-A)一条规则,然后告诉 iptables 允许通过该端口(-j ACCEPT)在目标端口 23(您的服务器)上进行任何源端口和 ip 连接。
iptables -A INPUT -i (name of your wan interface here - br1/eth1, etc.) --dport 23 -j ACCEPT