ウェブサイト検索

NetworkManagerの接続チェックを防ぐ方法


NetworkManagerは、ネットワークインターフェースの設定と管理のためのソフトウェアユーティリティです。これはGnomeプロジェクトによって開発され、多くのディストリビューションやデスクトップ環境で使用されています。NetworkManagerの目的は、ネットワークの設定と構成をできるだけ自動化し、手間をかけずに行えるようにすることです。そのため、ネットワークが完全なインターネット接続を持っているかどうかを判断するために、接続性チェックを実行できます。

その目的は主に、使用しているネットワークがキャプティブポータルを実装しているかどうかを確認することです。多くの公共Wi-Fi接続はキャプティブポータルを実装しており、ユーザーはフルインターネットアクセスが許可される前に、まずサインインするか、利用規約に同意する必要があります。その結果、NetworkManagerの接続性チェック機能は、ユーザーにキャプティブポータルを簡単に提示できるため、あまり面倒なく公共Wi-Fiを利用できるようになります。

NetworkManagerの接続チェックを防ぐ方法

接続確認の仕組みは、定義されたURIに対してHTTPリクエストを行うことによって機能します。リクエストが成功すれば、NetworkManagerはインターネットに完全に接続されていると判断し、失敗すればキャプティブポータルの背後にいると判断します。デフォルトでは、このリクエストは300秒ごとに1回送信されます。一部のユーザーは、この動作が望ましくないと感じるかもしれません。なぜなら、サーバーとネットワーク活動を監視できる立場にいる人々が、プライベートと見なされる可能性のある情報を特定できてしまうからです。接続確認は、あなたのマシンがオンであり、インターネットに接続されていることを判断するのを可能にします。また、あなたが使用しているディストリビューションや、実際にNetworkManagerを使用していることも判断することができます。

使用ケースや脅威モデルによっては、これはキャプティブポータル検出がシームレスに機能するために価値のある無視できるリスクと見なされる場合もあれば、完全に不必要なリスクとして避けた方が良い場合もあります。ノートパソコンでNetworkManagerを使用し、カフェやその他の公共の場所でWi-Fiを使用するためによく持ち込む場合は、接続チェックをオンのままにしておくか、少なくとも必要に応じて再度オンにする方が良いかもしれません。一方、デスクトップやサーバーが固定されており、イーサネットに接続されている場合は、接続チェックを無効にするのが理にかなっているかもしれません。ここでは、Ubuntu 20.04 と Arch Linux の二つの人気のあるディストリビューションでNetworkManagerの接続チェックをオフにする方法を見ていきます。

このチュートリアルでは、あなたが学ぶことができることは:

  • Ubuntu 20.04でNetworkManagerの接続確認を無効にする方法
  • Arch LinuxでNetworkManagerの接続チェックを無効にする方法

使用されるソフトウェア要件と規約

Ubuntu 20.04でNetworkManagerの接続確認を無効にする方法

デフォルトでは、Ubuntu 20.04は上記の通り、300秒ごとにhttp://connectivity-check.ubuntu.comへのHTTP接続を確立します。
Ubuntuでは、使いやすいユーザーインターフェイスを使用して、接続確認を簡単にオフにすることができます。そのための手順は以下の通りです。

Ubuntu 20.04で接続確認をオフにするには、右上隅の逆三角形をクリックし、次に設定をクリックします。
次に、プライバシーをクリックし、次に接続をクリックします。

接続確認のトグルがあります。このトグルをオフにするだけで、NetworkManagerの接続確認機能がオフになります。

Ubuntu 接続トグル

このトグルを変更すると、ユーザーインターフェイスの背後で実際に起こっていることは、設定ファイル内の値が変更されているということです。

このオプションを切り替える前後で/var/lib/NetworkManager/NetworkManager-intern.confファイルの内容を確認すると、[connectivity]の下にある.set.enabled=true設定がユーザーインターフェースでConnectivity Checkingオプションをオフにした後に.set.enabled=falseに変わることがわかります。これを念頭に置いて、ターミナルを使用してこの設定を変更したい場合は、以下の手順に従って自分でファイルを編集することができます。

まず、お好みのテキストエディタを使用して、/var/lib/NetworkManager/NetworkManager-intern.conf ファイルを root 権限で開きます。

sudo vim /var/lib/NetworkManager/NetworkManager-intern.conf

次に、関連する設定で次の値をtrueからfalseに変更してください。

次の内容を変更してください

.set.enabled=true

トゥ

.set.enabled=false

最後に、次のようにNetworkManagerサービスを再起動します。

sudo systemctl restart NetworkManager

上記の手順に従った後、設定 GUIの接続確認設定を見れば、その設定がオフになっていることがわかります。

Arch LinuxでNetworkManagerの接続チェックを無効にする方法

Arch LinuxでのNetworkManagerの接続確認設定の上書きは、Ubuntuとは少し異なります。Ubuntuとは異なり、Arch Linuxではユーザーが使用するデスクトップ環境やパッケージのセットを選択できるため、ArchシステムでNetworkManagerを使用していない場合もあります。NetworkManagerをインストールするか、NetworkManagerを使用するデスクトップ環境を選択した場合、デフォルトではArchは300秒ごとにhttp://www.archlinux.org/check_network_status.txtに接続を確立します。イントロで説明されている通りです。

Archプロジェクトは、自動接続チェックが潜在的なプライバシーの漏洩であることを認めていますが、リスクを最小限に抑えるためにアクセスをログに記録しないことを約束しています。その約束により、Archはサーバーへの接続とあなたを関連付けることができなくなりますが、ネットワーク活動を監視する立場にある誰もが、プライベートと見なされるかもしれない情報を特定できることを許可しています。この設定を上書きし、接続チェックを完全にオフにするための推奨方法は、お好みの設定を含む新しいファイルを作成することです。作成する必要があるファイルは/etc/NetworkManager/conf.d/20-connectivity.confです。

最初に、お好みのテキストエディタを使って新しいファイルを作成します。

sudo vim /etc/NetworkManager/conf.d/20-connectivity.conf

ネットワークマネージャのマニュアルページのCONNECTIVITY SECTIONに従って、この設定ファイル内で接続性チェックを無効にする方法はいくつかあります。ここでは、接続性チェックを無効にするためにinterval設定を変更する方法を使用します。interval設定は、ネットワークマネージャが指定されたuriにどれだけ頻繁にpingを送信するかを設定します。デフォルトではこの値は300で、300秒ごとに1回の意味です。この値を0に変更すると、ネットワークマネージャは指定されたuriにpingを送信しなくなり、接続性チェックが無効になります。
次の内容を作成したファイル(/etc/NetworkManager/conf.d/20-connectivity.conf)に入力し、保存してください。

[connectivity]
uri=http://www.archlinux.org/check_network_status.txt
interval=0

次に、NetworkManagerサービスを再起動します。

sudo systemctl restart NetworkManager

現在、NetworkManagerの接続チェックはあなたのArch Linuxシステムで無効になっています。

結論

この記事では、NetworkManagerの接続チェック機能について説明しました。それが何であるか、なぜ存在するのか、そしてそれを有効にしておきたくない理由について考察しました。この機能を無効にすることの利点と欠点について議論し、その後、UbuntuとArch Linuxで無効にする方法を見ていきました。接続チェックを有効のままにするか無効にするかはあなた次第ですが、この機能について知っておくことが重要であり、この知識があなたにとって正しい決定を下す手助けとなることを願っています。

関連記事: