Heim >System-Tutorial >LINUX >So sortieren Sie Ihre WLAN-MAC-Adresse in Ubuntu 16.04 zufällig

So sortieren Sie Ihre WLAN-MAC-Adresse in Ubuntu 16.04 zufällig

王林
王林nach vorne
2024-03-09 10:43:23610Durchsuche

Ubuntu 16.04 下随机化你的 WiFi MAC 地址的方法

Der Fehler dieses Designs ist die Einzigartigkeit, die unveränderte MAC-Adresse kann verwendet werden, um Sie zu verfolgen. Mit Starbucks-WLAN verbunden? OK, bemerkt. In der Londoner U-Bahn? Nehmen Sie das auch auf.

Wenn Sie jemals Ihren echten Namen auf einer WLAN-Verifizierungsseite eingegeben haben, haben Sie sich bereits mit dieser MAC-Adresse verknüpft. Ohne sorgfältige Lektüre der Lizenzbedingungen könnten Sie davon ausgehen, dass das kostenlose WLAN an Flughäfen vom Verkauf sogenannter „Kundenanalysedaten“ (Ihrer persönlichen Daten) profitiert. Zum Verkauf an Hotels, Restaurants und alle, die Sie kennenlernen möchten.

Ich wollte nicht, dass die Informationen protokolliert und an mehrere Unternehmen verkauft werden, also habe ich ein paar Stunden damit verbracht, eine Lösung zu finden.

MAC-Adresse ist möglicherweise nicht immer dieselbe

Glücklicherweise ist es möglich, zufällig eine gefälschte MAC-Adresse zu generieren, ohne die Verbindung zum Netzwerk zu trennen.

Ich möchte meine MAC-Adresse zufällig generieren, aber es gibt drei Voraussetzungen:

  1. MAC-Adressen sind in verschiedenen Netzwerken unterschiedlich. Das bedeutet, dass meine MAC-Adresse bei Starbucks und im Londoner U-Bahn-Netz nicht identisch sind, sodass es unmöglich ist, meine Aktivitäten zwischen verschiedenen Dienstanbietern zu verknüpfen.
  2. Die MAC-Adresse muss häufig geändert werden, damit niemand im Netzwerk weiß, dass ich dieselbe Person bin, die letztes Jahr 75 Mal hier vorbeigekommen ist.
  3. Die MAC-Adresse sollte den ganzen Tag über unverändert bleiben. Wenn sich die MAC-Adresse ändert, werden Sie in den meisten Netzwerken getrennt und müssen dann eine Bestätigungsseite aufrufen, um sich erneut anzumelden – was ärgerlich ist.
BetriebNetzwerkmanager

Mein erster Versuch bestand darin, ein Tool namens Macchanger zu verwenden, aber es schlug fehl. Denn NetworkManagerNetworkManager stellt die Standard-MAC-Adresse gemäß seinen eigenen Einstellungen wieder her.

Ich habe erfahren, dass Network Manager 1.4.1 oder höher automatisch zufällige MAC-Adressen generieren kann. Wenn Sie die Ubuntu-Version 17.04 verwenden, können Sie dies basierend auf dieser Konfigurationsdatei tun. Aber das erfüllt meine drei Anforderungen nicht vollständig (man muss zwischen zufälligzufällig und stabil wählen, aber es gibt keine Option, einen Tag lang gleich zu bleiben)

Da ich Ubuntu 16.04 verwende und die Netzwerkmanager-Version 1.2 ist, kann ich die neue Funktion der höheren Version nicht direkt nutzen. Möglicherweise unterstützt der Netzwerkmanager eine Randomisierungsmethode, aber das ist mir nicht gelungen. Deshalb habe ich ein Skript geschrieben, um dies zu erreichen.

Glücklicherweise ermöglicht Network Manager 1.2 die Emulation von MAC-Adressen. Sie können die Option „Verbindung bearbeiten“ im verbundenen Netzwerk sehen.

Network Manager unterstützt auch die Hook-Verarbeitung – jedes Skript, das sich in /etc/NetworkManager/dispatcher.d/pre-up.d/ befindet, wird ausgeführt, bevor die Netzwerkverbindung hergestellt wird.

Zufällig generierte gefälschte MAC-Adresse zuweisen
Ich möchte eine neue zufällige MAC-Adresse basierend auf der Netzwerk-ID und dem Datum generieren. Wir können das Befehlszeilentool nmcli des Netzwerkmanagers verwenden, um alle verfügbaren Netzwerke anzuzeigen:

ifconfig
> nmcli connection
NAME UUID TYPE DEVICE
Gladstone Guest 618545ca-d81a-11e7-a2a4-271245e11a45 802-11-wireless wlp1s0
DoESDinky 6e47c080-d81a-11e7-9921-87bc56777256 802-11-wireless --
PublicWiFi 79282c10-d81a-11e7-87cb-6341829c2a54 802-11-wireless --
virgintrainswifi 7d0c57de-d81a-11e7-9bae-5be89b161d22 802-11-wireless --
Da jedes Netzwerk eine eindeutige Kennung (UUID) hat, habe ich zur Umsetzung meines Plans die UUID und das Datum verkettet und dann MD5 verwendet, um den Hash-Wert zu generieren:

ifconfig
# eg 618545ca-d81a-11e7-a2a4-271245e11a45-2017-12-03
> echo -n "${UUID}-$(date +%F)" | md5sum
53594de990e92f9b914a723208f22b3f -
Das generierte Ergebnis kann die letzten acht Bytes der MAC-Adresse ersetzen.

Es ist erwähnenswert, dass das erste Byte 02 bedeutet, dass diese Adresse selbst angegeben ist. Tatsächlich werden die ersten drei Bytes der echten MAC-Adresse vom Hersteller bestimmt, b4:b6:76 steht beispielsweise für Intel.

Es ist möglich, dass einige Router die von ihnen angegebene MAC-Adresse ablehnen, aber das ist mir noch nicht aufgefallen.

Jedes Mal, wenn Sie eine Verbindung zu einem Netzwerk herstellen, verwendet dieses Skript nmcli, um eine zufällig generierte Pseudo-MAC-Adresse anzugeben.

Schließlich habe ich die Ausgabe von ifconfig überprüft und festgestellt, dass die MAC-Adresse HWaddr zu einer zufällig generierten Adresse (in Intel-Emulation) anstelle meiner echten MAC-Adresse geworden war.

> ifconfig
wlp1s0 Link encap:Ethernet HWaddr b4:b6:76:45:64:4d
inet addr:192.168.0.86 Bcast:192.168.0.255 Mask:255.255.255.0
inet6 addr: fe80::648c:aff2:9a9d:764/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:12107812 errors:0 dropped:2 overruns:0 frame:0
TX packets:18332141 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:11627977017 (11.6 GB) TX bytes:20700627733 (20.7 GB)
Skript
Das komplette Skript kann auch auf Github eingesehen werden.

Update: Verwenden Sie Ihre eigene MAC-Adresse, um Konflikte mit der echten Intel-Adresse zu vermeiden. Danke @_fink


Das obige ist der detaillierte Inhalt vonSo sortieren Sie Ihre WLAN-MAC-Adresse in Ubuntu 16.04 zufällig. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:linuxprobe.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen