無線LANのメリットや運用の注意点、電波や規格などの用語、要件定義や基本設計から
設定・構築・テストにいたるまで、たくさんのことをまとめています。
さらに、Arubaの機器を中心とした無線LANの設計と設定を解かりやすく解説しています。

タグ:ダイナミックVLAN

無線LANクライアントに、認証したユーザに応じたVLANを割り当てる方法を紹介する。
ダイナミックVLANと呼ぶこともある。

前提として次の二つの作業が必要。
(1)RADIUSサーバ側で、ユーザに応じたRADIUSアトリビュートを返す設定をしておく
NPSの設定例 FreeRADIUSでの設定例を参照のこと
(2)IAPを接続しているSWのポートに、タグVLANの設定をしておく。
簡単なのは、管理IPアドレス用のVLANはタグなし(UntagやネイティブVLANとも言う)にしておき、クライアントに割り当てるVLANについては802.1QのタグVLANを設定する方法だ。

IAPでは、RADIUSサーバから返されるアトリビュートの情報を元に、VLANを割り当てることができる。
例として、ユーザに応じてVLAN200、VLAN210、VLAN220の3つのいずれかを割り当てる設定を紹介する。

ネットワーク(SSID)は、すでに設定済みのものを変更してもよいし、新規で設定してもよい。
今回は、新規設定を例に解説する。

「ネットワーク」→「新規」をクリック。SSIDを入力する。用途は従業員でOK。
001

















クライアントIPとVLANの割り当てもそのままでOK。
002

















セキュリティは、WPA2エンタープライズを選択し、RADIUSサーバを指定しておく。
003

















アクセスの設定がポイントだ。ここでは、
・どのような条件のときに(ロールの割り当てルール)→RADIUSサーバから返された属性がどのような条件か
・どのように動作するか(ロール)→VLANを割り当てる。
を設定する。(設定の順序はこの逆なので注意。)

アクセスルールはロールベースを設定する。
004

















ロールの「新規」をクリックし、ロールの名前を決める。ここでは割り当てるVLAN名をロール名とした。
005


















アクセスルールの「新規」をクリック。
006


















新しいルールが表示されるので、ルールタイプを「アクセス制御」から「VLANの割り当て」に変更する。
007


















割り当てるVLAN番号を入力し、「OK」する。
008


















同様に、VLAN210とVLAN220を作る。
009


















次に、ロールの割り当てルールを設定する。「ロールの割り当てルール」の「新規」をクリックする。
条件が出てくるので、
属性:「Tunnel-Private-Group-Id」(VLANIDを示す属性)
演算子:「次に一致」
文字列:VLAN番号(VLANID)
ロール:作成したロール(VLANの割り当てを行うロール)
を設定し、「OK」する。
010
















Tunnel-Private-Group-Idとは、RADIUSサーバから返される属性値であり、VLAN番号を意味する。


同様に、VLAN210、220も作成する。
011


















これでOK。

なお、SSID名と同じロールはデフォルトロールと呼び、どの条件にも当てはまらない場合の動作を規定する。
たとえば、認証は成功したがTunnel-Private-Group-Idが300だったような場合だ。(300はロールの割り当てルールに設定をしていない)

アクセスコントロールをシビアに設定するのであれば、デフォルトロールのアクセスルールも厳しめにしておいたほうがよいかもしれない。



FreeRADIUSを使って、認証ユーザごとに異なるVLANを割り当てる設定方法を説明する。
AP側の設定はこちらを参照のこと。

FreeRADIUSでは、/etc/raddb/usersファイルでユーザを管理する。この中に、ユーザ情報とともに属性値(VLANIDの情報など)を設定する。設定する属性値は3つ。
・Tunnell-Typeとは、どのようなトンネルの方式を使うかの設定(802.1Xの場合"VLAN")
・Tunnel-Medium-Typeとは、トンネルプロトコル(上記で設定したVLAN)をどのようにトランスポート(輸送)するかを設定(802.1Xの場合"IEEE-802")
Tunnel-private-Group-Idは認証後に所属するVLANIDを指定する。

設定例は以下のとおり。
testuser001       Cleartext-Password := "パスワード"
        Tunnel-Type = VLAN,    ←全ユーザでVLAN固定
        Tunnel-Medium-Type = IEEE-802,      ←全ユーザでIEEE-802固定
        Tunnel-Private-Group-Id = 210       ←VLANIDを210に設定
testuser002       Cleartext-Password := "パスワード"
        Tunnel-Type = 13,    ←全ユーザでVLAN固定(別の書き方)
        Tunnel-Medium-Type = 6,   ←全ユーザでIEEE-802固定(別の書き方)
        Tunnel-Private-Group-Id = 220       ←VLANIDを220に設定
testuser003       Cleartext-Password := "パスワード"
        Tunnel-Type = 13,
        Tunnel-Medium-Type = 6,
        Tunnel-Private-Group-Id = 200
※カンマの有無に注。
※testuser001とtestuser002では、Tunnel-TypeとTunnel-Medium-Typeの記述の仕方を変えているが、同じ意味の設定である。Tunnel-Typeが6であればVLANを意味し、 Tunnel-Medium-Typeが13ならばIEEE-802を意味するからだ。
※Arubaの設定では、本来Tunnel-Private-Group-IDにVLANIDを設定するだけでVLANを割り当て可能。しかし、一般的には3つの属性値を必要とする機種もあるため、ここでは3箇所とも設定している。
※DEFAULT設定が残っているときちんと動作しないことがある。余分な設定を全部消して、ユーザ情報だけにしておくほうがよい。

また、/etc/raddb/eap.confでも設定変更が必要。ユーザ名に基づく属性情報をNAS(オーセンティケータ)に送るかどうかのパラメータである。(noは送らない、yesは送る)
peap {
  ・・・
  use_tunneled_reply = no yes        ←デフォルトがnoなので、yesに変更
  ・・・

オーセンティケータとの認証シーケンスにおいて、アクセス認可と同時にこれらの属性値がRADIUSサーバからオーセンティケータに送信される。オーセンティケータは属性値に基づいて、ユーザのVLANを設定する。
RADIUSサーバからのパケットの一例を示す。usersで設定した属性値がオーセンティケータに送信されている。
RADIUSキャプチャ














(補足)
上記の/etc/raddb/usersは、下記のような書き方もできる。
testuser001       Cleartext-Password := "****"
        Tunnel-Private-Group-Id = 210
testuser002       Cleartext-Password := "****"
        Tunnel-Private-Group-Id = 220
testuser003       Cleartext-Password := "****"
        Tunnel-Private-Group-Id = 200

DEFAULT Auth-Type == EAP
        Tunnel-Type = VLAN,
        Tunnel-Medium-Type = IEEE-802
 全ユーザで共通となるTunnel-TypeとTunnel-Medium-Typeをデフォルト値として共用にしておく。こうしておけば、各ユーザのところでは Tunnel-Private-Group-Idを設定しておくだけでよい。
 なお、DEFALUTは全ユーザを定義した後に記述すること。ユーザ名より前に記述するときちんと動作しない。





FreeRADIUSを使って、認証ユーザごとに異なるVLANを割り当てる設定方法を説明する。
AP側の設定はこちらを参照のこと。

基本的にはPEAPと同じである。PEAPとの違いは、Cleartext-Passwordを設定する必要がないという点。

FreeRADIUSでは、/etc/raddb/usersファイルでユーザを管理する。この中に、ユーザ情報とともに属性値(VLANIDの情報など)を設定する。設定する属性値は3つ。
・Tunnell-Typeとは、どのようなトンネルの方式を使うかの設定(802.1Xの場合"VLAN")
・Tunnel-Medium-Typeとは、トンネルプロトコル(上記で設定したVLAN)をどのようにトランスポート(輸送)するかを設定(802.1Xの場合"IEEE-802")
Tunnel-private-Group-Idは認証後に所属するVLANIDを指定する。

設定例は以下のとおり。
testuser001      
        Tunnel-Type = VLAN,    ←全ユーザでVLAN固定
        Tunnel-Medium-Type = IEEE-802,      ←全ユーザでIEEE-802固定
        Tunnel-Private-Group-Id = 210       ←VLANIDを210に設定
testuser002
        Tunnel-Type = 13,    ←全ユーザでVLAN固定(別の書き方)
        Tunnel-Medium-Type = 6,   ←全ユーザでIEEE-802固定(別の書き方)
        Tunnel-Private-Group-Id = 220       ←VLANIDを220に設定
testuser003
        Tunnel-Type = 13,
        Tunnel-Medium-Type = 6,
        Tunnel-Private-Group-Id = 200
※カンマの有無に注。
※testuser001とtestuser002では、Tunnel-TypeとTunnel-Medium-Typeの記述の仕方を変えているが、同じ意味の設定である。Tunnel-Typeが6であればVLANを意味し、 Tunnel-Medium-Typeが13ならばIEEE-802を意味するからだ。
※Arubaの設定では、本来Tunnel-Private-Group-IDにVLANIDを設定するだけでVLANを割り当て可能。しかし、一般的には3つの属性値を必要とする機種もあるため、ここでは3箇所とも設定している。
※DEFAULT設定が残っているときちんと動作しないことがある。余分な設定を全部消して、ユーザ情報だけにしておくほうがよい。

(補足)
上記の/etc/raddb/usersは、下記のような書き方もできる。
testuser001      
        Tunnel-Private-Group-Id = 210
testuser002      
        Tunnel-Private-Group-Id = 220
testuser003      
        Tunnel-Private-Group-Id = 200

DEFAULT Auth-Type == EAP
        Tunnel-Type = VLAN,
        Tunnel-Medium-Type = IEEE-802
 全ユーザで共通となるTunnel-TypeとTunnel-Medium-Typeをデフォルト値として共用にしておく。こうしておけば、各ユーザのところでは Tunnel-Private-Group-Idを設定しておくだけでよい。
 なお、DEFALUTは全ユーザを定義した後に記述すること。ユーザ名より前に記述するときちんと動作しない。






スポンサードリンク

このページのトップヘ