我有两个通过以太网连接的系统,其中一个系统具有可提供互联网访问的 WiFi 无线电。
在此图中,sys#2 有 WiFi 无线电
sys#1 <---> Ethernet <---> sys#2 <---> wifi <---> internet
sys#2 将数据包从以太网(接口 eth0)路由到 wifi(接口 wlan0)。 sys#2 连接到 AP,sys#2 本身并不充当 AP。我正在寻找一种使用 nftables 或 iptables 来过滤和丢弃 sys#2 上没有 MAC 匹配 sys#1 的数据包的方法。我对丢弃到达以太网的数据包更感兴趣。我想要保护的是防止有人插入 sys#2 并获得对 WiFi 网络的访问权限。
nftables 可以做到这一点吗?我知道有人可以欺骗他们的 MAC 来绕过这个问题,但这只是一个临时措施,直到我们可以通过 IPSEC 或 VPN 保护连接。
编辑: 运行建议的 nft 命令会导致错误:
# nft add rule filter input iif eth0 ether saddr != A4:A3:A3:00:00:00 drop
<cmdline>:1:1-68: Error: Could not process rule: No such file or directory
# ifconfig eth0
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 metric 1
inet 10.0.1.1 netmask 255.255.255.0 broadcast 10.0.1.255
...
答案1
使用NFFT,丢弃从网络接口接收eth0
且源地址不为 的所有以太网帧00:00:5e:00:53:00
:
nft add rule filter input iif eth0 ether saddr != 00:00:5e:00:53:00 drop
iptables允许类似的过滤苹果扩大:
iptables -A INPUT -i eth0 -m mac ! --mac-source 00:00:5e:00:53:00 -j DROP