我有一个非常简单的任务,但我经常失败:-(。因此,这是我的简单设置:
我想建立一个路由器,eth0
其一侧的接口连接到开放世界,另一侧有两个接口,eth1
并将wlan0
它们桥接在一起br0
。这工作得很好,但现在我正在尝试配置iptables
。
有效的是客户端与互联网的连接以及路由器与客户端的连接(例如 ssh)。无效的是eth1
和中的客户端之间的连接wlan0
,所以我猜我的配置不太正确 ;-)。
有人可以解释一下我的错误吗?
多谢!
以下是我的iptable
规则:
iptables -F
iptables -F -t mangle
iptables -F -t nat
iptables -F INPUT
iptables -F FORWARD
iptables -F OUTPUT
iptables -X
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
#SSH
iptables -A INPUT -i br0 -p tcp --dport 22 -j ACCEPT
#HTTP(S)
iptables -A INPUT -p tcp -m multiport --dport 80,443 -j ACCEPT
#DNS
iptables -A INPUT -p tcp --dport 53 -j ACCEPT
iptables -A INPUT -p udp --dport 53 -j ACCEPT
#DNS
iptables -A INPUT -p tcp --dport 953 -j ACCEPT
#DHCP
iptables -A INPUT -p udp --dport 67 -j ACCEPT
iptables -A INPUT -p udp --dport 68 -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
iptables -A OUTPUT -o br0 -j ACCEPT
#DNS
iptables -A OUTPUT -p tcp -m tcp --sport 53:65535 --dport 53 -j ACCEPT
iptables -A OUTPUT -p udp -m udp --sport 53:65535 --dport 53 -j ACCEPT
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
#HTTP(S)
iptables -A FORWARD -p tcp -m multiport --dport 80,443 -j ACCEPT
iptables -A FORWARD -p udp -m multiport --dport 80,443 -j ACCEPT
#DNS
iptables -A FORWARD -p tcp --dport 53 -j ACCEPT
iptables -A FORWARD -p udp --dport 53 -j ACCEPT
#NTP
iptables -A FORWARD -p udp --dport 123 -j ACCEPT
iptables -A FORWARD -i wlan0 -o eth1 -j ACCEPT
iptables -A FORWARD -i wlan0 -o eth1 -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i eth1 -o wlan0 -j ACCEPT
iptables -A FORWARD -i eth1 -o wlan0 -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
并且net.ipv4.ip_forward=1
设置...