是否可以使用 nftables 按 MAC 过滤/丢弃数据包

是否可以使用 nftables 按 MAC 过滤/丢弃数据包

我有两个通过以太网连接的系统,其中一个系统具有可提供互联网访问的 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

相关内容