KUINS-AirにUbuntuをEAP-TLS(クライアント証明書)を用いて接続する - GUI編

この記事は CAMPHOR- Advent Calendar の27日目の記事です。

お久しぶりです。CAMPHOR-の運営メンバーになってからはや1年半。色々やりたいことがありつつも、何も進捗を埋めていないことに焦りを感じている &es; (@_and_es) / Twitter です。あんですとお読みください。

CAMPHOR- Advent Calendar は、昨日の CAMPHOR- 2022年の総括 ~やりたいことに使ってもらえるコミュニティ~ - CAMPHOR- Blog をもって一旦締めくくられたわけですが、延長もOKということだったので記事を書いています。

何をするか

タイトルの通りです。京都大学の情報環境機構が提供している学内無線LANサービス「KUINS-Air」にUbuntuEAP-TLSを用いて接続します。GUI編ということはCLI編があるのかというと、近日中に書きたいと思っています。

EAP-TLSとは、ID / パスワードではなくクライアント証明書を用いる認証方法で、安全に接続できるため情報環境機構からも推奨されています。

Windows / macOS / iPadOS / iOS / AndroidEAP-TLSを使う方法は KUINS-Air | 無線LAN | 京都大学情報環境機構 で説明されています。でもなぜかLinuxの設定方法は書かれてないのです。Linuxを愛用する皆さんもぜひEAP-TLSを用いて安全に使いましょう!

Windows / macOS / iPadOS / iOS / Androidをお使いの皆さんも、ぜひ情報環境機構のWebサイトを見て、EAP-TLSを使いましょうね。

※この記事の内容は2022/12/26現在の情報をもとに構成されています。各種設定項目は変わることもあるため、ご自身でも情報環境機構のWebサイトを確認しながら設定することを推奨します。

環境

Ubuntu 22.04.1 LTS

Ubuntu 20.04 LTSでも同様にできたはずです。他のディストリビューションもだいたい同じようにやればできると思います。

システムの言語が英語になっているので、他の言語をお使いの方は適宜読み替えてください。

手順

KUINS-Airが利用できる場所で行ってください。

クライアント証明書を取得する

クライアント証明書申請 | クライアント証明書発行システム | 京都大学情報環境機構

⇡で説明されている手順に従い、クライアント証明書を取得します。学内限定サービスから取得するため、KUINS-Airに接続するかVPNを使う必要があります。この時点では証明書がないので、ID / パスワードを用いるPEAPを用いて接続しましょう。そのやり方は以下で説明しています。必要ない場合は読み飛ばしてください。

KUINS-AirUbuntuPEAPを用いて接続する方法

Ubuntuの設定->Wi-Fiから「KUINS-Air」を選択します。

各項目を以下のように設定します。

項目
Wi-Fi security WPA & WPA2 Enterprise
Authentication Protected EAP (PEAP)
Anonymous identity 空白
Domain rad.kuins.kyoto-u.ac.jp
CA certificate Security_Communication_RootCA2.pam1
PEAP version Automatic
Inner authentication MSCHAPv2
Username 学生アカウントのID(ECS-ID)2
Password 学生アカウントのパスワード

UsernameとPasswordは、 PandA全学生共通ポータル に入力するものと同じです。

以下の画像のようになっていればOKです。最後にConnectを押せばつながります。

EAP-TLSの設定をする

取得した証明書を用いてKUINS-Airに繋ぐ設定をします。

Ubuntuの「設定」を開き、Wi-Fiの項目を選択します。

上の手順で接続しているなど、すでにPEAPでKUINS-Airに繋げられる状態の場合は、歯車ボタンからKUINS-Airの設定に入り、Forget Connectionを押して過去の設定を削除してください。3

過去の設定を削除したら改めて「KUINS-Air」を選択し、各項目を以下のように設定します。

項目
Wi-Fi security WPA & WPA2 Enterprise
Authentication TLS
Identity 学生アカウントのID(ECS-ID)
Domain rad.kuins.kyoto-u.ac.jp
CA certificate Security_Communication_RootCA2.pam
User certificate 取得したクライアント証明書4
User private key 取得したクライアント証明書5
User key password 取得したクライアント証明書のパスワード6

以下の画像のようになっていればOKです。

最後にConnectを押して正常に接続できていることを確認すれば完了です!

あとがき

EAP-TLSを使って接続すると、ちょっと嫌なことがあっても「まあ私はEAP-TLSで認証してるしな」ってなるし仕事でむかつく人に会っても「そんな口きいていいのか?私はEAP-TLSで安全にWi-Fiを使ってる身だぞ」ってなれる。高度なセキュリティを求められる現代社会においてEAP-TLSで認証することは有効

ということで、皆さんもEAP-TLSを使いましょう。それではまたっ。


  1. Select from fileから/etc/ssl/certs/Security_Communication_RootCA2.pamを選択してください。
  2. ECS-ID(学生、非常勤講師等向け) | 京都大学情報環境機構
  3. 削除しなくても、設定画面のSecurityタブからEAP-TLSを選択することができますが、この方法だとDomainの設定ができません。過去の設定が引き継がれるのかと思いきや、実際は空白として設定されてしまうためセキュリティ上避けた方が良いでしょう。ちなみにUbuntuの設定に表示されない全ての設定項目は、nmcli connection show (接続名)というコマンドで確認できます。接続名は、Wi-Fiの場合は基本的にSSIDが設定されています。今回の場合はnmcli connection show KUINS-Airですね。
  4. ファイル名を変更していない場合は、NIIcertyyyyMM-ddHHmmss.p12という名前のはずです。
  5. User certificateとして取得したクライアント証明書を選択すると、自動的に選択されるはずです。
  6. クライアント証明書を取得する際に入力したパスワードです。 京都大学 クライアント証明書発行申請システム から確認できます。