https://fedoramagazine.org/randomize-mac-address-nm/
作者 | Sheogorath, Stuart D Gathman
譯者 | Hank Chow (HankChow) ??共計翻譯:5.0 篇 貢獻時間:293 天
今時今日,無論在家裡的沙發上,還是在外面的咖啡廳,只要開啟膝上型電腦,連上 Wi-Fi,就能透過網路與外界保持聯絡。但現在的 Wi-Fi 熱點們大都能夠透過每張網絡卡對應的唯一 MAC 地址[1]來追蹤你的裝置。下麵就來看一下如何避免被追蹤。
現在很多人已經開始註重個人隱私這個問題。個人隱私問題並不僅僅指防止他人能夠訪問到你電腦上的私有內容(這又是另一個問題了),而更多的是指可追蹤性,也就是是否能夠被輕易地統計和追蹤到。大家都應該對此更加重視[2]。同時,這方面的底線是,服務提供者在得到了使用者的授權後才能對使用者進行追蹤,例如機場的計時 Wi-Fi 只有在使用者授權後才能夠使用。
因為固定的 MAC 地址能被輕易地追蹤到,所以應該定時進行更換,隨機的 MAC 地址是一個好的選擇。由於 MAC 地址一般只在區域網內使用,因此隨機的 MAC 地址也不大會產生衝突[3]。
配置 NetworkManager
要將隨機的 MAC 地址預設地用於所有的 Wi-Fi 連線,需要建立 /etc/NetworkManager/conf.d/00-macrandomize.conf
這個檔案:
[device]
wifi.scan-rand-mac-address=yes
[connection]
wifi.cloned-mac-address=stable
ethernet.cloned-mac-address=stable
connection.stable-id=${CONNECTION}/${BOOT}
然後重啟 NetworkManager :
systemctl restart NetworkManager
以上配置檔案中,將 cloned-mac-address
的值設定為 stable
就可以在每次 NetworkManager 啟用連線的時候都生成相同的 MAC 地址,但連線時使用不同的 MAC 地址。如果要在每次啟用連線時也獲得隨機的 MAC 地址,需要將 cloned-mac-address
的值設定為 random
。
設定為 stable
可以從 DHCP 獲取相同的 IP 地址,也可以讓 Wi-Fi 的強制主頁[4]根據 MAC 地址記住你的登入狀態。如果設定為 random
,在每次連線的時候都需要重新認證(或者點選“我同意”),在使用機場 Wi-Fi 的時候會需要到這種 random
樣式。可以在這篇 NetworkManager 的部落格文章[5]中參閱到有關使用 nmcli
從終端配置特定連線的詳細說明。
使用 ip link
命令可以檢視當前的 MAC 地址,MAC 地址將會顯示在 ether
一詞的後面。
$ ip link
1: lo: <LOOPBACK,UP,LOWER_UP> 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: enp2s0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state DOWN mode DEFAULT group default qlen 1000
link/ether 52:54:00:5f:d5:4e brd ff:ff:ff:ff:ff:ff
3: wlp1s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DORMANT group default qlen 1000
link/ether 52:54:00:03:23:59 brd ff:ff:ff:ff:ff:ff
什麼時候不能隨機化 MAC 地址
當然,在某些情況下確實需要能被追蹤到。例如在家用網路中,可能需要將路由器配置為對電腦分配一致的 IP 地址以進行埠轉發;再例如公司的僱主可能需要根據 MAC 地址來提供 Wi-Fi 服務,這時候就需要進行追蹤。要更改特定的 Wi-Fi 連線,請使用 nmcli
檢視 NetworkManager 連線並顯示當前設定:
$ nmcli c | grep wifi
Amtrak_WiFi 5f4b9f75-9e41-47f8-8bac-25dae779cd87 wifi --
StaplesHotspot de57940c-32c2-468b-8f96-0a3b9a9b0a5e wifi --
MyHome e8c79829-1848-4563-8e44-466e14a3223d wifi wlp1s0
...
$ nmcli c show 5f4b9f75-9e41-47f8-8bac-25dae779cd87 | grep cloned
802-11-wireless.cloned-mac-address: --
$ nmcli c show e8c79829-1848-4563-8e44-466e14a3223d | grep cloned
802-11-wireless.cloned-mac-address: stable
這個例子在 Amtrak 使用完全隨機 MAC 地址(使用預設配置)和 MyHome 的永久 MAC 地址(使用 stable
配置)。永久 MAC 地址是在硬體生產的時候分配到網路介面上的,網路管理員能夠根據永久 MAC 地址來檢視裝置的製造商 ID[6]。
更改配置並重新連線活動的介面:
$ nmcli c modify 5f4b9f75-9e41-47f8-8bac-25dae779cd87 802-11-wireless.cloned-mac-address random
$ nmcli c modify e8c79829-1848-4563-8e44-466e14a3223d 802-11-wireless.cloned-mac-address permanent
$ nmcli c down e8c79829-1848-4563-8e44-466e14a3223d
$ nmcli c up e8c79829-1848-4563-8e44-466e14a3223d
$ ip link
...
你還可以安裝 NetworkManager-tui ,就可以透過視覺化介面選單來編輯連線。
總結
當你走在路上時,你要留意周圍的環境[7],並警惕可能的危險[8]。同樣,在使用公共網際網路資源時也要註意你自己的可追蹤性。
via: https://fedoramagazine.org/randomize-mac-address-nm/
作者:sheogorath[10],Stuart D Gathman[11] 選題:lujun9972 譯者:HankChow 校對:wxy
本文由 LCTT 原創編譯,Linux中國 榮譽推出