私は普段 wifi を使用する際、iwd というツールを使用して接続の設定をしています。
SSID で接続先を指定し、パスフレーズを入力する方式である WPA-PSK 方式を使用する際はとても簡単に接続の設定ができるのですが、ユーザ ID とパスワードを使用した認証である、IEEE802.1X 認証を使用している wifi に接続する際、かなり苦戦したのでここに書いておきます。
今回設定する認証方式はその中でも EAP-PEAP という認証方式です。
# 結論
まず結論を言うと、例えば SSID が hogehoge という wifi に接続する場合、/var/lib/iwd
にhogehoge.8021x
というファイルを作成し、以下のようにコンフィグを書きます。
以下はメールアドレスに[email protected]という Email が与えられた際の設定例です。
|
|
コンフィグを作成した上で以下を実行します。
|
|
# はじめに
設定にあたって、まずは Archwiki を参照しました。
とありましたが、CA 証明書を持っているわけでもなく、実際につなぐために必要な情報が足りずスタックしていました。EAP-PEAP
EAP-PWD と同様に、フォルダー内に
essid.8021x
を作成する必要があります。設定ファイルの作成に進む前に、組織が使用している CA 証明証を確認する良い機会でもあります。これは MSCHAPv2 パスワード認証を使用する設定ファイルの例です:― iwd - ArchWiki/var/lib/iwd/essid.8021x [Security] EAP-Method=PEAP [email protected] EAP-PEAP-CACert=/path/to/root.crt EAP-PEAP-ServerDomainMask=radius.realm.edu EAP-PEAP-Phase2-Method=MSCHAPV2 [email protected]> EAP-PEAP-Phase2-Password=hunter2` [Settings] AutoConnect=true
# 解決法
# ドメインを確定させる
とりあえずつなぐことができるデバイスでつないでみて、必要な情報を取ってくることにしました。
スマホで接続できるであろうドメインを探して、接続できたドメインを登録しました。
証明書無しでスマホで接続できたということは、iwd でも同じような手法を用いれば接続できると思い、調べることにしました。
# 証明書なしでの接続方法を調べる
iwd 8021 without cert などと検索してみると、次のような書き込みを発見しました。
この通り設定してみたのですがうまくいきませんでした。しかしI just had to figure this out today as I’m finally back to campus and did a fresh arch install on an old laptop (in general I like iwd better that netctl, but this took a while to figure out). My school does not require a certificate and in fact I couldn’t figure out where to find it. Also we don’t use an anonymous identity. So, YMMV, but here is my
.8021x file: [Security] EAP-Method=PEAP EAP-PEAP-Phase2-Method=MSCHAPV2 EAP-PEAP-Phase2-Identity=my_school_mail EAP-PEAP-Phase2-Password=my_password [Setting] Autoconnect=true
I was pretty shocked when this worked!
― iwd and 8021x / Newbie Corner / Arch Linux Forums
EAP-Identity
を追加し、Email を入力してみたところ、うまくいきました。
# 感想
調べれば意外と早く解決できた問題でしたが、どのように検索すればよいのかという点で linux を使い始めた私にはとてもむずかしい問題でした。今回改めてこの問題に向き合ってみて、どこがだめかを分析できるようにだんだんなってきたから解決できたのかなと感じました。
これによって学内の wifi につなげることができ、SSH 接続もできるようになりました。