🔐

PEAP の WPA / WPA2 Enterprise なアクセスポイントで CA 証明書を検証しない (NetworkManager)

に公開

PEAP の WPA / WPA2 Enterprise な Wi-Fi 環境では一般的に CA 証明書を求められます。

CA 証明書とは Wi-Fi 接続時に接続先が正当なアクセスポイントであることを検証するために利用される証明書のことで、多くの場合、システム証明書を選択し認証するか、Wi-Fi に接続する前に事前に組織が発行している証明書をインストールしておくことが求められます。

しかし、そのいずれにも該当しない運用をしている場合があります。「証明書を検証しない」あるいは、「初回接続時に証明書をインストールする」ことを求める運用です。これは実際、あまり良い運用であるとは言えませんが、利便性を優先し、その運用をする組織もかなりみられます。

多くの一般向け OS の場合、アクセスポイントに接続する際に、適切に認証情報を預けると、小さなウィンドウやダイアログが表示され、証明書への信頼の手順も含めて接続できます。

しかし、事前に細かな設定が必要な OS もあります。例えば、Ubuntu などがそうです。この記事では、証明書の検証を無視して接続するように仕向ける設定を説明します。

設定

1. 事前に nmcli や nmtui を用いて、接続の構成を書いておく

WPA / WPA2 Enterprise 向けに接続の方法が組織から提供されているはずです(Android 向けの設定が最も近いでしょう)。

一般的な設定の方法と仕組みは変わらないため、詳細は割愛します。

このとき、設定した Profile Name の値は覚えておいてください。

2. 構成したプロファイルに対して、以下の設定を行う

nmcli connection modify <Profile Name> 802-1x.system-ca-certs no
nmcli connection modify <Profile Name> 802-1x.ca-cert ""

3. 設定が変更されているか確認する

nmcli connection show <Profile Name> | grep 802-1x

きっとこの出力は、以下のようになっていることでしょう。

802-1x.system-ca-certs:           no
802-1x.ca-cert:                   --

4. 必要であれば接続しなおす

nmcli connection down <Profile Name>
nmcli connection up <Profile Name>

おわりに

おわりです

おまけ

蛇足になりますが、Ubuntu Server などは、デフォルトでネットワーク接続を systemd-networkd で管理します。この管理を NetworkManager に移譲するには、次の netplan で上書きします。

以下の設定は、Ubuntu 24.04 のものです。事前に NetworkManager をインストールしてください。

  1. apt で network-manager をインストール
sudo apt update
sudo apt install network-manager
  1. netplan の設定を書き換える
/etc/netplan/50-cloud-init.yaml
network:
   version: 2
   renderer: NetworkManager
  1. netplan の設定を保持する
sudo netplan apply
# あるいは sudo netplan try

Discussion