認証方式PEAPを使用した無線LAN環境構築
-
Author: uncho
自宅の無線LAN環境はWPA2-PSKで、認証方式はプレシェアードキーによるものだったが、今回新しい無線アクセスポイントを購入し認証方式をPEAPで運用ことにした。PEAPの特徴としては前回の記事「無線LANの認証について」に簡単にまとめているが、EAP-TLSより運用が楽なのが特徴となっている。
PEAPによる認証となるとPEAP対応の認証サーバRadiusが必要になる。構築の際にサーバ証明書も必要となってくるので、証明書の作成については「プライベート認証局の作り方」「サーバ証明書の作成」を参照し準備する。またユーザのアカウント情報だが、今回はローカルの「usersファイル」でなくLDAPで管理するので「LDAPサーバの構築」の通りに事前構築が必要。
その他、一番肝心な無線LANアクセスポイント(以下無線AP)だが、個人向け無線APは大抵PEAPには対応しておらず、企業向けは高額すぎる。そこで今回は「APPLE AirMac Extreme (MD031J/A)」を購入することにした。AirMacは個人向けだが 802.1xの各認証方式「EAP-TLS」「EAP-TTLS」「PEAP」等に対応し、802.11a/b/g/nの他 5GHz帯も使用でき高性能である。(5GHz帯は2.4GHzと同時利用可能)
改めて、今回必要となる機材及び使用は下記の通り。(バージョン表記は今回使用したものである)
- OS:Fedora15
- 認証サーバ:Radius (freeradius-2.1.12-2)
- ユーザDB:LDAP (openldap-2.4.24-5)
- 無線AP:APPLE AirMac Extremeベースステーション MD031J/A
まずは認証サーバRadiusを構築する。各設定ファイルの内容は下記の通り。
radiusd.confは変更する箇所は無いが、ユーザの接続状況をログに出力させるため、下記の設定を変更した。
eap.confにはPEAPに必要な設定をする。md5,leap,gtc,ttlsはコメント化して無効にする。その他 下記以外はデフォルトのまま。
eap.confで指定したdh2048.pemを作成する。
clients.confにはAirMacのIPアドレス等を定義を追加する。その他下記以外はデフォルトのまま。
LDAP関係の設定のため、modulesディレクトリにあるldapファイルにある下記の箇所を修正する。その他はデフォルトのまま。
最新のFreeRadiusは接続元のクライアント毎にバーチャルホスト機能を使って複数の認証サーバを構築することができる。今回は「wireless」の名前で無線LAN用のバーチャルホストを定義する。その為に先ずは、modules/wirelessというファイルを作って下記の通りの設定にする。
PEAPで認証処理をする際、最初は上記のwirelessで処理を行うが、その後処理をinner-tunnelを引き継ぐので、「inner-tunnel」も下記の通りの設定にする。
上記で作成した「wireless」を下記の手順で有効化する。
以上でRadiusの設定は完了。AirMacの設定は、設定項目「ワイヤレス」で下記の設定を行う。
「Radiusを構成…」では下記の設定を行う。
LDAPについては、適当なユーザを作成する。ObjectClassにはaccountとposixAccountがあれば良い。userPasswordで設定するパスワードはPlain Textでないと認証が失敗する。
以上で必要な設定は完了。あとはスマートフォン等から接続を試み、無事接続されることを確認する。以下のコマンドでRadiusをデバックモードで起動させれば、設定ミスで認証処理が失敗した場合にデバックメッセージから原因を確認出来るので、まずはデバックモードで試してみる。
以上