2021-05-12 14:32:11
使用 NetworkManager 隨機化你的 MAC 地址
今時今日,無論在家裡的沙發上,還是在外面的咖啡廳,只要開啟筆記型電腦,連上 Wi-Fi,就能通過網路與外界保持聯絡。但現在的 Wi-Fi 熱點們大都能夠通過每張網絡卡對應的唯一 MAC 地址來追蹤你的裝置。下面就來看一下如何避免被追蹤。
現在很多人已經開始注重個人隱私這個問題。個人隱私問題並不僅僅指防止他人能夠存取到你電腦上的私有內容(這又是另一個問題了),而更多的是指可追蹤性legibility,也就是是否能夠被輕易地統計和追蹤到。大家都應該對此更加重視。同時,這方面的底線是,服務提供者在得到了使用者的授權後才能對使用者進行追蹤,例如機場的計時 Wi-Fi 只有在使用者授權後才能夠使用。
因為固定的 MAC 地址能被輕易地追蹤到,所以應該定時進行更換,隨機的 MAC 地址是一個好的選擇。由於 MAC 地址一般只在區域網內使用,因此隨機的 MAC 地址也不大會產生衝突。
設定 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 的強制主頁captive portal根據 MAC 地址記住你的登入狀態。如果設定為 random
,在每次連線的時候都需要重新認證(或者點選“我同意”),在使用機場 Wi-Fi 的時候會需要到這種 random
模式。可以在這篇 NetworkManager 的部落格文章中參閱到有關使用 nmcli
從終端設定特定連線的詳細說明。
使用 ip link
命令可以檢視當前的 MAC 地址,MAC 地址將會顯示在 ether
一詞的後面。
$ iplink
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_WiFi5f4b9f75-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。
更改設定並重新連線活動的介面:
$ nmcli c modify 5f4b9f75-9e41-47f8-8bac-25dae779cd87802-11-wireless.cloned-mac-address random
$ nmcli c modify e8c79829-1848-4563-8e44-466e14a3223d802-11-wireless.cloned-mac-address permanent
$ nmcli c down e8c79829-1848-4563-8e44-466e14a3223d
$ nmcli c up e8c79829-1848-4563-8e44-466e14a3223d
$ iplink
...
你還可以安裝 NetworkManager-tui ,就可以通過視覺化介面選單來編輯連線。
總結
當你走在路上時,你要留意周圍的環境,並警惕可能的危險。同樣,在使用公共網際網路資源時也要注意你自己的可追蹤性。
via: https://fedoramagazine.org/randomize-mac-address-nm/
作者:sheogorath,Stuart D Gathman 選題:lujun9972 譯者:HankChow 校對:wxy
Linux公社的RSS地址:https://www.linuxidc.com/rssFeed.aspx
本文永久更新連結地址:https://www.linuxidc.com/Linux/2018-09/154211.htm
相關文章