GNU/Linux >> Znalost Linux >  >> Debian

Jak trvale změnit MAC adresu v Linuxu

V tomto článku se dozvíte, jak trvale změnit / zkazit MAC adresy síťových rozhraní. K tomuto účelu používáme Macchanger, utilitu pro manipulaci s MAC adresami, pro kterou vytváříme systémovou jednotku, která se automaticky spustí při startu.

Macchanger, nástroj, který v tomto článku použijeme ke změně MAC adresy, má službu, která se vás zeptá, zda chcete změnit MAC pokaždé, když se váš počítač zavede, ale u Ubuntu 18.04 to pro mě nefunguje. Vzhledem k tomu, že všechny změny provedené Macchangerem budou resetovány po restartování systému, tento článek poskytuje pokyny, jak vytvořit systémovou jednotku pro automatické spouštění Macchangeru při spuštění počítače se systémem Linux, přičemž pokaždé změníte MAC adresu.

Chcete-li použít tuto příručku, váš systém Linux musí používat systemd , zřejmě.

1. Nainstalujte Macchanger

Macchanger by měl být v repozitářích hlavních linuxových distribucí. Chcete-li jej nainstalovat do Debian / Ubuntu / Linux Mint, použijte:

sudo apt install macchanger

2. Určete síťové rozhraní, pro které chcete změnit adresu MAC

K tomu můžete použít následující příkaz:

ifconfig -a

Pokud používáte systém, kde to přestalo fungovat, můžete místo toho spustit tento příkaz:

ip link show


Vaše síťová rozhraní by nyní měla být zobrazena následovně:

  • Do ifocnfig -a :

$ ifconfig -a
enp10s0: flags=4163  mtu 1500
        inet 192.168.1.211  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe60::cc24:29cf:2c1:1c5a  prefixlen 64  scopeid 0x20
        ether 1d:21:da:ab:1d:71  txqueuelen 1000  (Ethernet)
        RX packets 164861  bytes 215658240 (215.6 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 45118  bytes 8577639 (8.5 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
lo: flags=73  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 265  bytes 20133 (20.1 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 265  bytes 20133 (20.1 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
wlp3s0: flags=4098  mtu 1500
        ether 1e:14:57:1c:66:11  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

  • Do ip link show :
$ ip link show
1: lo:  mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp10s0:  mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
    link/ether 1d:21:da:ab:1d:71 brd ff:ff:ff:ff:ff:ff
3: wlp3s0:  mtu 1500 qdisc mq state UP mode DORMANT group default qlen 1000
    link/ether 1e:14:57:1c:66:11 brd ff:ff:ff:ff:ff:ff

Zde je kabelové síťové rozhraní enp10s0 a rozhraní bezdrátové sítě je wlp3s0 (dříve eth0 , 1 atd. byl použit pro drátová rozhraní a wlan0 , 1 atd. pro WLAN). Poznamenejte si síťové rozhraní, jehož MAC adresu chcete podvrhnout.

3. Zkontrolujte, zda Macchanger ve vašem systému skutečně funguje

Před vytvořením systémové jednotky pro automatickou změnu MAC adresy při každém restartu zkontrolujte, zda Macchanger skutečně může změnit vaši MAC adresu (viděl jsem případy, kdy to z nějakého důvodu nefunguje). Chcete-li dočasně změnit MAC adresu (změna bude resetována po restartu systému), spusťte Macchanger následovně:

sudo macchanger -r NETWORK-INTERFACE

NETWORK-INTERFACE je síťové rozhraní, pro které chcete změnit MAC, jak je uvedeno v kroku 2 v tomto článku (např. enp10s0, wlp3s0).

Pokud Macchanger funguje, je to -r Option by měl změnit MAC na náhodnou MAC adresu a příkaz by měl vrátit původní a novou MAC adresu.

4. Vytvořte systémovou jednotku, která automaticky spustí Macchanger při každém spuštění systému (to znamená, že MAC adresa se změní při každém spuštění systému)

Vytvoříme /etc/systemd/system/[email protected] systemd unit file a otevřete jej jako root pomocí textového editoru:

sudo touch /etc/systemd/system/[email protected]
gedit admin:///etc/systemd/system/[email protected]

Pokud nemáte nainstalovaný Gedit, nahraďte jej v příkazu výše jiným textovým editorem, který je nainstalován ve vašem systému.

Vložte následující do [email protected] Soubor:

[Unit]
Description=changes mac for %I
Wants=network.target
Before=network.target
BindsTo=sys-subsystem-net-devices-%i.device
After=sys-subsystem-net-devices-%i.device
[Service]
Type=oneshot
ExecStart=/usr/bin/macchanger -r %I
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target

Systémová jednotka se používá macchanger -r pro změnu MAC. -r nastaví zcela náhodnou MAC adresu. Můžete změnit -r na -e změnit MAC, ale zachovat původní bajty výrobce NIC, -a umístit náhodné MAC výrobce stejného druhu a tak dále. Všechny dostupné možnosti zobrazíte takto:

macchanger --help

Můžete také nastavit vlastní, nenáhodnou MAC adresu. Chcete-li to provést, změňte ExecStart=/usr/bin/macchanger -r %I Řádek takto:

ExecStart=/usr/bin/macchanger --mac=XX:XX:XX:XX:XX:XX %I

Nahraďte XX:XX:XX:XX:XX:XX s novou MAC adresou.

5. Aktivujte službu Macchanger systemd

Nyní je čas povolit službu systemd, aby se spustila v době spouštění. Chcete-li to provést, použijte:

sudo systemctl enable [email protected]enp10s0.service

Nahraďte enp10s0 se síťovou adresou z kroku 2.

Stejný příkaz můžete použít k povolení změny MAC adresy pro více síťových rozhraní.

6. Restartujte systém

Vaše síťová rozhraní by nyní měla mít novou MAC adresu. Informace o tom, jak zkontrolovat starou (původní) a novou adresu MAC, naleznete níže.

Jak zkontrolovat původní a nové adresy MAC

Macchanger lze použít ke zjištění původní MAC a nové MAC adresy spuštěním tohoto příkazu:

macchanger -s NETWORK-INTERFACE

Kde NETWORK-INTERFACE  je síťové rozhraní, které jste našli pomocí příkazů v kroku 2.

Příklad:

$ macchanger -s enp10s0
Current MAC:   1d:21:da:ab:1d:71 (unknown)
Permanent MAC: 72:ab:3d:89:88:88 (Intel Corporate)

Jak zakázat změnu MAC při každém restartu pomocí systemd

Chcete-li změny vrátit zpět, nejprve deaktivujte službu (služby) systémového měniče MAC:

sudo systemctl disable [email protected]enp10s0.service

Nahraďte enp10s0 se síťovou adresou z kroku 2 (z pokynů pro počáteční nastavení). Udělejte to pro každé síťové rozhraní, pro které jste službu dříve aktivovali.

Nyní můžete odebrat servisní soubor systemd měniče MAC:

sudo rm /etc/systemd/system/[email protected]


Debian
  1. Jak změnit MAC adresu pomocí macchangeru na Kali Linuxu

  2. Jak změnit identitu systému Linux

  3. Jak změnit MAC adresu na CentOS 8

  1. Jak změnit/podvrhnout MAC adresu v Debianu 10

  2. Jak změnit výchozí prostředí v Linuxu

  3. Jak změnit výchozí shell v Linuxu

  1. Jak změnit IP adresu na RHEL 8 / CentOS 8 Linux

  2. Jak změnit nebo podvrhnout MAC adresu v Ubuntu a Linux Mint

  3. Jak změnit velikost MTU v Linuxu