我试图使用一个2端口的无线适配器NAS作为家庭路由器,我想大概知道下面的iptables应该承担多大的工作量:
接口如下:
eth0: xx.xx.xx.xx/23 - WAN eth1: 192.168.1.1/24 - LAN lbr0: 192.168.2.1/24 - WLAN tun0: 192.168.3.1/24 - OpenVPN clients
使用简单的转发,我至less从局域网和无线局域网的NAT工作,但没有提供隔离:
# iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE # iptables -A FORWARD -i eth0 -o eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT # iptables -A FORWARD -i eth0 -o lbr0 -m state --state RELATED,ESTABLISHED -j ACCEPT # iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT # iptables -A FORWARD -i lbr0 -o eth0 -j ACCEPT
我觉得这应该是相当简单的,但我是一个完全新手iptables。 有没有一个很好的教程这个地方,或者有人可以就这个问题给我任何直接的build议? 我已经为OpenVPN服务器的eth0的全局拒绝filter打了一个洞,我不认为除了WLAN和OpenVPN段的DNS之外,我还有任何端口转发问题。
这是否像添加一些DROP规则和DNS的某种ACCEPT覆盖一样简单,还是我错过了一些实质性的东西?
你不是。 但是,我认为将FORWARD策略改为DROP会更简单,更具有思想性,然后只需添加所需的规则,以便数据包转发只在需要时才起作用。 这将排除任何可能的错误。
你也可以使用另一种更复杂的方法,但也更灵活。 您可以为您的LAN,WLAN和VPN创build单独的路由表,仅包含所需的路由(不包括不需要的接口路由 – 例如从WAN FIB中排除LAN接口路由)。