我有两个通过以太网连接的系统,一个系统有一个提供互联网访问的 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 上没有与 sys#1 匹配的 MAC 的数据包。我会对丢弃到达以太网的数据包更感兴趣。我要保护的是防止有人插入 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
...
使用nft删除从网络接口接收到的所有以太网帧,
eth0
并且源地址不为00:00:5e:00:53:00
:iptables允许使用mac扩展进行类似的过滤: