在 Debian 10 中,Macchanger 可以正常工作直到连接到网络

在 Debian 10 中,Macchanger 可以正常工作直到连接到网络

我一直在尝试使用 Macchanger 在我的家庭网络上测试我的 MAC 欺骗能力。未连接 WiFi 时,它工作得很好。我可以使用 ifconfig 关闭接口,更改 mac,然后再次打开它,没有任何问题。使用 ifconfig 进行验证显示了随机以太 - 所以我知道一切顺利。

但是,当我尝试连接到 WiFi 时,运行 ifconfig 时它会显示原始 BIA。登录我的路由器显示我的 BIA 也是注册的 MAC 地址 - 不是随机的。

我的问题是:哪个默认设置导致 Debian 恢复到我的 wifi 接口的 BIA 而不是我欺骗的地址?

我已经尝试遵循几个不同的指南,这些指南说尝试更改 NetworkManager.conf 文件和 00-default.link 但这些都不起作用。任何帮助,将不胜感激。谢谢!

答案1

NetworkManager 获得了更改其处理的接口的以太网 MAC 地址的能力,并且默认情况下在无线接口上执行此操作。这将覆盖之前更改接口 MAC 地址的任何其他工具。

以太网的每个连接设置前缀为802-3-ethernet.,无线设置的前缀为802-11-wireless.。我将展示一个以太网的例子,然后讲述与无线的区别。

以太网

每个连接的主要设置称为802-3-ethernet.cloned-mac-address。另请注意,这cloned-mac-address就是显示的内容纳米克利出于兼容性原因。实际财产是内部命名assigned-mac-address。还有一些相关的:

$ nmcli connection show id Myeth0 |grep mac # permanent MAC was redacted
802-3-ethernet.mac-address:             06:05:04:03:03:01
802-3-ethernet.cloned-mac-address:      --
802-3-ethernet.generate-mac-address-mask:--
802-3-ethernet.mac-address-blacklist:   --

mac-address当设置时(通常是)告诉连接仅适用于具有此功能的网卡永恒的MAC 地址(也可以使用 检索ethtool --show-permaddr eth0),mac-address-blacklist则相反:避免将通用连接应用于具有此 MAC 地址的给定接口(显然只应设置其中之一)。它们不用于 MAC 欺骗设置。

所以有几个选择:

  • 不使用网络管理器

    但例如直接wpa_supplicant使用 DHCP 客户端。

  • 要求 NetworkManager 不要再干涉

    您可以要求 NetworkManager 根本不接触 MAC 地址:

    # nmcli connection down id Myeth0
    # nmcli connection modify id Myeth0 802-3-ethernet.cloned-mac-address preserve
    # ip link set eth0 down #very old NICs don't support changing MAC when up
    # ip link set eth0 address 0A:09:08:07:06:05
    # nmcli connection up id Myeth0
    

    新设置的 MAC 地址将保留为当前的任何值。

  • 或者只是让 NetworkManager 完成这项工作,而不必先使用其他工具:

    $ nmcli connection modify id Myeth0 802-3-ethernet.cloned-mac-address 0e:0d:0c:0b:0a:09
    $ nmcli connection down id Myeth0
    $ nmcli connection up id Myeth0
    

    NM 现在将负责将 MAC 地址更改为指定的地址。

要恢复为永久,您可以设置802-3-ethernet.cloned-mac-addresspermanent(或将其留空,因为这是以太网的默认设置)。

还有其他模式,例如随机的或者稳定的也可以使用where generate-mac-address-mask(例如生成随机 MAC,但似乎始终来自同一真实制造商)

无线的

  • 默认情况下,当802-11-wireless.cloned-mac-address为空时,随机的用来。

  • 有一个802-11-wireless.mac-address-randomization可能已被弃用,可能会影响之前的设置。文档中不太清楚,但并不是真正需要的

大多数这些设置也在 GUI 小程序中公开。 “克隆的 MAC 地址”字段不限于下拉菜单:您可以在字段中输入 MAC 地址而不是预定义值(保留、永久、随机、稳定)。

有一个额外的 wifi 设置我不知道如何更改,除非通过编辑 NetworkManager 的配置文件::wifi.scan-rand-mac-address设置为是的默认情况下,它告诉 NetworkManager 更改 wifi 接口的 MAC 地址扫描时。此设置是全局的或按设备设置,但不是按设备设置联系,因为还没有激活连接。将其更改为代替是的/etc/NetworkManager/conf.d/devicewlan0.conf您可以添加一个如下所示的文件:

[device]
match-device=interface-name:wlan0
wifi.scan-rand-mac-address:no

但文档对此并不是很详细。无论如何,也许只有选择上面的第二个选项 ( preserve) 而不是第三个选项(设置 MAC 地址)时才需要此设置。

参考:

https://developer.gnome.org/NetworkManager/stable/settings-802-3-ethernet.html

https://developer.gnome.org/NetworkManager/stable/settings-802-11-wireless.html

https://developer.gnome.org/NetworkManager/stable/NetworkManager.conf.html(检查设备部分)

相关内容