LinuxはNetworkManagerを使用してMACアドレスをランダムに生成します

LinuxはNetworkManagerを使用してMACアドレスをランダムに生成します

今では、自宅のソファーに座っていても、外の喫茶店にいても、ノートパソコンの電源を入れてWi-Fiに接続すれば、インターネットを通じて外の世界とつながることができます。しかし、今日の Wi-Fi ホットスポットのほとんどは、各ネットワーク カードに対応する固有の MAC アドレスを通じてデバイスを追跡できます。追跡を回避する方法は次のとおりです。
現在、多くの人が個人のプライバシーの問題に注目し始めています。個人のプライバシーの問題は、他人があなたのコンピュータ上のプライベートなコンテンツにアクセスできないようにすること(これは別の問題です)だけではなく、可読性、つまり簡単に数えたり追跡したりできるかどうかに関係します。誰もがこれにもっと注意を払うべきです。同時に、この点で肝心なのは、サービスプロバイダーはユーザーから許可を得た後にのみユーザーを追跡できるということです。たとえば、空港の時間指定 Wi-Fi は、ユーザーの許可を得た後にのみ使用できます。
固定の MAC アドレスは簡単に追跡できるため、定期的に変更する必要があります。ランダムな MAC アドレスを選択することをお勧めします。 MAC アドレスは通常、ローカル エリア ネットワーク内でのみ使用されるため、ランダムな MAC アドレスによって競合が発生する可能性は低くなります。

NetworkManager の紹介

NetworkManager は、システムのネットワーク接続を管理し、D-BUS (アプリケーションが相互に通信するための簡単な方法を提供する無料ソフトウェア プロジェクト。freedesktoporg プロジェクトの一部として開発されました) を介してそのステータスを報告するバックグラウンド サービスと、ユーザーがネットワーク接続を管理できるようにするクライアント プログラムで構成されています。
NetworkManager サービス: NetworkManager - Linux ネットワークを簡単に
NetworkManager の利点: ネットワーク接続の作業を簡素化し、デスクトップ自体と他のアプリケーションにネットワークを認識させます。
NetworkManager のバックグラウンド サービス: GNOME および Xfce の場合は nm-applet ツール、KDE ​​ユーザーの場合は KNetworkManager です。
NetworkManager (旧称 NetworkMangler) の初期バージョンはあまり使い勝手がよくありませんでしたが、現在ではネットワーク管理が苦痛ではなくなる強力なツールになっています。

NetworkManagerの最新バージョンにおける改善点と新機能

NetworkManager の新しいバージョンでは、より多くのネットワーク デバイスがサポートされます。 0.8.1 以降では、GSM、UMTS、CDMA カードなどのモバイル ブロードバンド デバイスに対する ModemManager サポートが追加されました。信号強度の表示や 2G/3G モードの選択機能など、ModemManager を使用した新しい機能もあります。追加の接続料金を避けるためにローミングをオフにすることもできます。
NetworkManager 0.8.1 以降では Bluetooth の使用もサポートされており、パーソナル エリア ネットワーク (PAN) インターネット アクセスだけでなく、古い Bluetooth ダイヤルアップ ネットワーク (DUN) プロトコルもサポートされています。サポートされているすべての(またはほとんどの)デバイスは wiki で確認できます。
NetworkManagerはIPv6の自動設定と静的IPをサポートします。NetworkManagerの新バージョンではIPv6のDHCPサポートも提供されます。
NetworkManager の新しいバージョンでは、デバイスとプロトコルのサポートが強化されています。NetworkManager の最新バージョンには、まったく新しい美しいクライアント インターフェイスが備わっています。
コマンドライン インターフェイス: NetworkManager の最新バージョンの最大の特徴は、NetworkManager のコマンドライン インターフェイスであるコマンドライン ツール コマンドです。
NetworkManager には独自の CLI ツール nmcli があります。 nmcli を使用すると、ユーザーはネットワーク接続の状態を照会したり、管理に使用したりできます。利点: 原始的、比較的シンプルな構文、CLI で NetworkManager を使用して簡単に習得できます。

NetworkManager の設定

すべての Wi-Fi 接続にデフォルトでランダムな MAC アドレスを使用するには、/etc/NetworkManager/conf.d/00-macrandomize.conf ファイルを作成します。

[デバイス]
wifi.scan-rand-mac-address=はい
[繋がり]
wifi.cloned-mac-address=安定
ethernet.cloned-mac-address=安定
connection.stable-id=${CONNECTION}/${BOOT}

次に、NetworkManager を再起動します。

systemctl restart NetworkManager

上記の設定ファイルでは、cloned-mac-address の値を stable に設定することで、NetworkManager が接続をアクティブにするたびに同じ MAC アドレスが生成されますが、接続時には異なる MAC アドレスが使用されます。接続をアクティブにするたびにランダムな MAC アドレスを取得する場合は、cloned-mac-address の値を random に設定する必要があります。

これを安定に設定すると、DHCP から同じ IP アドレスが取得され、Wi-Fi キャプティブ ポータルが MAC アドレスに基づいてログイン ステータスを記憶するようになります。ランダムに設定すると、接続するたびに再認証(または「同意する」をクリック)する必要があります。このランダム モードは、空港の Wi-Fi を使用する場合に必要です。 nmcli を使用してターミナルから特定の接続を構成するための詳細な手順については、この NetworkManager ブログ投稿を参照してください。

現在の MAC アドレスを表示するには、ip link コマンドを使用します。MAC アドレスは、ether という単語の後に表示されます。

$ IPリンク
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue 状態 UNKNOWN モード DEFAULT グループ デフォルト qlen 1000
リンク/ループバック 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
リンク/イーサ 52:54:00:5f:d5:4e brd ff:ff:ff:ff:ff:ff
3: wlp1s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq 状態 UP モード DORMANT グループ デフォルト qlen 1000
リンク/イーサ 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 --
ステープルズホットスポット de57940c-32c2-468b-8f96-0a3b9a9b0a5e wifi --
マイホーム e8c79829-1848-4563-8e44-466e14a3223d wifi wlp1s0
...
$ nmcli c show 5f4b9f75-9e41-47f8-8bac-25dae779cd87 | grep cloned
802-11-ワイヤレス.クローンされたMACアドレス: --
$ nmcli c show e8c79829-1848-4563-8e44-466e14a3223d | grep クローン
802-11-ワイヤレス.クローンされたMACアドレス: 安定

この例では、Amtrak では完全にランダムな MAC アドレス (デフォルト設定を使用) を使用し、MyHome では永続的な MAC アドレス (安定した設定を使用) を使用します。永続 MAC アドレスは、ハードウェアの製造時にネットワーク インターフェイスに割り当てられます。ネットワーク管理者は、永続 MAC アドレスに基づいてデバイスの製造元 ID を表示できます。

設定を変更し、アクティブなインターフェイスを再接続します。

$ nmcli c 5f4b9f75-9e41-47f8-8bac-25dae779cd87 802-11-wireless.cloned-mac-address をランダムに変更
$ nmcli c 変更 e8c79829-1848-4563-8e44-466e14a3223d 802-11-wireless.cloned-mac-address 永続
$ nmcli c ダウン e8c79829-1848-4563-8e44-466e14a3223d
$ nmcli c アップ e8c79829-1848-4563-8e44-466e14a3223d
$ IPリンク
...

NetworkManager-tuiをインストールして、ビジュアル インターフェイス メニューから接続を編集することもできます。

道路を歩くときは、周囲に注意し、起こりうる危険に注意する必要があります。同様に、パブリック インターネット リソースを使用するときは、自分自身の追跡可能性に注意してください。

要約する

以上がこの記事の全内容です。この記事の内容が皆様の勉強や仕事に何らかの参考学習価値をもたらすことを願います。123WORDPRESS.COM をご愛顧いただき、誠にありがとうございます。これについてもっと知りたい場合は、次のリンクをご覧ください。

以下もご興味があるかもしれません:
  • 2018 年に選ぶ価値のある 5 つの Linux サーバー ディストリビューション
  • 2016 年に Linux ディストリビューションを選択する方法
  • 異なる Linux オペレーティング システム ディストリビューションの共存を実現する方法
  • Linuxディストリビューションとインストールに関する基礎知識
  • iptables および firewalld ツールを使用して Linux ファイアウォール接続ルールを管理する
  • Linux サーバーのステータスとパフォーマンスに関連するコマンドの詳細な説明
  • Linux で特定の時間にコマンドを実行する方法
  • Linux システム (CentOS) での python2.7.10 のインストール
  • スケジュールされた時間に古いジャンクファイルを自動的に削除する Linux 用の Autotrash ツール
  • Linux での Python 3.6.1 環境設定チュートリアル
  • オーディオマニアにアピールするオーディオビジュアルLinuxディストリビューション

<<:  Windows で MySQL サービスを停止または削除できない問題の解決策

>>:  jQuery は、画像を切り替えるための左ボタンと右ボタンのクリックを実装します。

推薦する

Docker に Kong ゲートウェイをインストールする方法の例

1. Dockerネットワークを作成する docker ネットワーク作成 kong-net 2. デ...

Linux 継続的インテグレーションで Maven を自動的にインストールする方法

Mavenパッケージを解凍する tar xf apache-maven-3.5.4-bin.tar....

Windows での PyTorch 開発環境のインストール チュートリアル

アナコンダのインストールAnaconda は、Python の使用を容易にするために作成されたソフト...

MySQLデータベースのSYNフラッディング問題を解決する

Syn 攻撃は、最も一般的で最も簡単に悪用される攻撃方法です。TCP プロトコルの欠陥を利用して、偽...

OpenSSL は双方向認証のチュートリアルを実装します (サーバーとクライアントのコード付き)

1. 背景1.1 問題点最近の製品テスト レポートでは、PKI ベースの認証方法の使用が推奨されて...

SqlクエリMySqlデータベーステーブル名と説明テーブルフィールド(列)情報

以下では、SQL クエリ ステートメントを使用して、Mysql データベース内のテーブルのテーブル名...

CSS3 で translate と transition を使用する方法

translate と transition は非常に強力で、習得するのは不可能だといつも感じていま...

MySQL双方向バックアップの実装方法

MySQL 双方向バックアップはマスター-マスター バックアップとも呼ばれ、両方の MySQL サー...

CSS 3D からソースコードによる空間座標軸へ

かつて、サイコロを振るゲームについて話しました。その時は、steps 属性 + スプライト画像を使用...

Linux でバックグラウンドで実行中のプログラムを表示して終了する方法

1. .shファイルを実行する./sh ファイルを使用して直接実行することもできますが、現在のターミ...

MySQLクライアント認証後の接続失敗の問題に対する完璧なソリューション

MySQL 環境をローカル (192.168.1.152) にデプロイし、リモート クライアント 1...

Vueコンポーネント間のデータ共有の詳細な説明

目次1. プロジェクト開発において、コンポーネント間の最も一般的な関係は次の 2 つのタイプに分けら...

CentOS7 カーネル カーネル5.0 バージョンアップグレード

アップグレードプロセス:元のシステム: CentOS7.3 [root@my-e450 ~]# un...

HTML マルチメディア アプリケーション: Web ページにフラッシュ アニメーションと音楽を挿入する

1. HTML_falshアニメーションでのマルチメディアの応用(WebページへのFlashアニメー...

CentOS 6.4 MySQL 5.7.18 のインストールと設定方法のグラフィックチュートリアル

Centos6.4 で mysql5.7.18 をインストールするための具体的な手順が全員に共有され...