対象環境
- Aruba 70XX シリーズ モビリティ・コントローラ
はじめに
Aruba モビリティ・コントローラと Aruba ClearPass を連携させて、無線クライアントに自動で証明書を配布、およびクライアントを指定の SSID に接続させるプロビジョニング
について、無線クライアントがプロビジョニング用 SSID に接続した際に表示される Web 認証画面である Captive Portal
の設定について記載します。
- ここではモビリティ・コントローラ側の設定を対象とし、Aruba ClearPass 側の設定については扱いません
- 必要最低限の設定についてのみ記載します
- 以下では CLI で設定する場合について記載しますが GUI でも設定可能です
設定イメージ
対象範囲
今回の対象範囲は、プロビジョニングシーケンスの内、以下画像の赤枠部分です。
ClearPass 側の設定については以下記事に記載しています。
プロビジョニング用 SSID の設定
プロビジョニング実施のために無線クライアントが最初に接続する SSID の設定です。
ここでは SSID 接続時は PSK による認証、クライアント認証は MAC アドレス認証とします。
以下の図のようにプロファイルを次々と紐づけていくコンフィグ構造になっているため、下位のプロファイルから順に作成していくことになります。
ユーザロールと Captive Portal の設定
Captive Portal の設定はユーザロールの設定に紐づけることになります。ユーザロールの名前は ClearPass から返されるユーザロールと一致させます。ClearPass から返されたユーザロールに対応した Captive Portal を表示することになります。
プロビジョニング用 SSID の設定
以下の順にプロファイルを作成していきます。
- aaa authentication-server radius
- aaa server-group
- ip access-list session
- user-role
- aaa authentication dot1x
- aaa authentication mac
- aaa profile
- wlan ssid-profile
- wlan virtual-ap
- ap-group
aaa authentication-server radius
aaa authentication-server radius プロファイルでは認証サーバの IP アドレスと RADIUS Key を指定します。
認証サーバは ClearPass になるため、ClearPass の IP アドレス(管理インターフェースの IP アドレス)を指定します。
aaa authentication-server radius "radius-sv"
host 10.1.10.20
key radius-key
フォーマット:
aaa authentication-server radius "プロファイル名"
host "ClearPass の IP"
key "RADIUS Key"
aaa server-group
aaa server-group プロファイルは、認証で使用する RADIUS サーバを 1 つ以上指定した Radius サーバグループです。
上で作成した aaa authentication-server radius プロファイルを指定します。
aaa server-group "radius-sv-group"
auth-server "radius-sv"
フォーマット:
aaa server-group "プロファイル名"
auth-server "RADIUS サーバ名"
ip access-list session
ip access-list session はユーザーロールに割り当てるアクセスリストで、宛先IP/port などに基づいて通信を制御します。
aaa profile 作成時に使用する以下の 2 つのロール用のアクセスリストを作成します。
- initial-role 項目で指定するロール用のアクセスリスト
- デフォルトで割り当たるロール
- mac-default-role 項目で指定するロール用のアクセスリスト
- MAC アドレス認証が成功した際に割り当たるロール
アクセスリストの内容は案件のポリシーに合わせて設定します。
ここでは簡単のためにすべての通信を許可するアクセスリストを作成します。
ip access-list session "permit-any"
any any any permit
フォーマット:
ip access-list session "ACL名"
<制御内容を記述>
user-role
対象 SSID に接続したユーザに割り当たることになるユーザロールの設定です。ユーザロールに対してはアクセスリストを紐づける設定をします。
aaa profile 作成時に使用する以下の 2 つのロールを作成します。
- initial-role 項目で指定するロール
- デフォルトで割り当たるロール
- mac-default-role 項目で指定するロール
- MAC アドレス認証が成功した際に割り当たるロール
ここでは簡単のためにすべての通信を許可するロールを作成します。
user-role "permit-any-role"
access-list session "permit-any"
フォーマット:
user-role "ユーザロール名"
access-list session "ACL名"
aaa authentication dot1x
dot1x のプロファイルです。プロファイルの定義のみ実施すれば良いです。
aaa authentication dot1x "dot1x"
フォーマット:
aaa authentication dot1x "プロファイル名"
aaa authentication mac
MAC 認証のプロファイルです。プロファイルの定義のみ実施すれば良いです。
aaa authentication mac "mac"
フォーマット:
aaa authentication mac "プロファイル名"
aaa profile
aaa authentication プロファイル,user-role,RADIUSサーバグループを紐づける設定です。
aaa profile "aaa-prov-profile"
authentication-mac "mac"
authentication-dot1x "dot1x"
initial-role "permit-any-role"
mac-default-role "permit-any-role"
mac-server-group "radius-sv-group"
radius-accounting "radius-sv-group"
mac-server-group
項目では MAC アドレス認証で使用する RADIUS サーバグループ(ここでは ClearPass を含む RADIUS サーバグループ)を指定しますradius-accounting
項目では RADIUS アカウンティングで使用する RADIUS サーバグループ(ここでは ClearPass を含む RADIUS サーバグループ)を設定します
フォーマット:
aaa profile "プロファイル名"
authentication-mac "プロファイル名"
authentication-dot1x "プロファイル名"
initial-role "ユーザロール名"
mac-default-role "ユーザロール名"
mac-server-group "RADIUS サーバグループ名"
radius-accounting "RADIUS サーバグループ名"
wlan ssid-profile
ESSID 名と暗号化方式を設定します。
SSID 接続時にパスワード認証をするため opmode
項目で wpa2-psk-aes
を指定します。
wlan ssid-profile "ssid-provision"
essid "essid-provision"
opmode wpa2-psk-aes
フォーマット:
wlan ssid-profile "プロファイル名"
essid "ESSID 名"
opmode wpa2-psk-aes
wlan virtual-ap
wlan virtual-ap プロファイルでは、aaa profile と wlan ssid-profile を紐づけます。
SSID の Vlan や転送モード (bridge/tunnel) も wlan virtual-ap プロファイルで設定します。
wlan virtual-ap "vap-provision"
aaa-profile "aaa-prov-profile"
ssid-profile "ssid-provision"
vlan 10
フォーマット:
wlan virtual-ap "プロファイル名"
aaa-profile "プロファイル名"
ssid-profile "プロファイル名"
vlan "Vlan-ID"
forward-mode <bridge/tunnel>
※forward-mode のデフォルトは tunnel
ap-group
最後に ap-group を設定します。ap-group では wlan virtual-ap プロファイルを指定します。
ap-group "sample-group"
virtual-ap "vap-provision"
フォーマット:
ap-group "プロファイル名"
virtual-ap "プロファイル名"
ユーザロールと Captive Portal の設定
プロビジョニングのために ClearPass から返されるユーザロール(以下、プロビジョニング user-role )と、それに対応する Captive Portal に関する設定です。
以下の順にプロファイルを作成していきます。
- netdestination
- aaa authentication-server radius
- aaa server-group
- ip access-list session(captive-portal 用)
- user-role(captive-portal 用)
- aaa authentication captive-portal
- ip access-list session(プロビジョニング user-role 用)
- user-role(プロビジョニング user-role)
netdestination
netdestination は aaa authentication captive-portal の white-list 項目で指定するドメインの定義です。
対象 SSID に接続したクライアントがアクセスできる Web サイトを指定します。
これはオプションの設定です。
netdestination "web-site"
name google.com
フォーマット:
netdestination "プロファイル名"
name "ドメイン"
aaa authentication-server radius
aaa authentication-server radius プロファイルでは認証サーバの IP アドレスと RADIUS Key を指定します。
認証サーバは ClearPass になるため、ClearPass の IP アドレス(管理インターフェースの IP アドレス)を指定します。
aaa authentication-server radius "radius-sv"
host 10.1.10.20
key radius-key
フォーマット:
aaa authentication-server radius "プロファイル名"
host "ClearPass の IP"
key "RADIUS Key"
aaa server-group
aaa server-group プロファイルは、認証で使用する RADIUS サーバを 1 つ以上指定した Radius サーバグループです。
上で作成した aaa authentication-server radius プロファイルを指定します。
aaa server-group "radius-sv-group"
auth-server "radius-sv"
フォーマット:
aaa server-group "プロファイル名"
auth-server "RADIUS サーバ名"
ip access-list session(captive-portal 用)
ip access-list session はユーザーロールに割り当てるアクセスリストで、宛先IP/port などに基づいて通信を制御します。
aaa authentication captive-portal 作成時に使用する以下のロール用のアクセスリストを作成します。
- default-role 項目で指定するロール用のアクセスリスト
- Web 認証成功時にデフォルトで割り当たるロール
アクセスリストの内容は案件のポリシーに合わせて設定します。
ここでは、プロビジョニング用 SSID に接続時は以下の通信のみに制限したいため、そのようなアクセスリストとします。
- DNS パケットは許可
- DHCP パケットは許可
- ClearPass との通信は許可
- 他は拒否
ip access-list session "prov-clearpass"
any any svc-dns permit
any any svc-dhcp permit
any host 10.1.10.20 any permit
any any any deny
※10.1.10.20 の部分は ClearPass の IP
フォーマット:
ip access-list session "ACL名"
<制御内容を記述>
user-role(captive-portal 用)
対象 SSID に接続したユーザに割り当たることになるユーザロールの設定です。ユーザロールに対してはアクセスリストを紐づける設定をします。
aaa authentication captive-portal作成時に使用する以下のロールを作成します。
- default-role 項目で指定するロール
- Web 認証成功時にデフォルトで割り当たるロール
ここでは簡単のためにすべての通信を許可するロールを作成します。
user-role "prov-clearpass-role"
access-list session "prov-clearpass"
フォーマット:
user-role "ユーザロール名"
access-list session "ACL名"
aaa authentication captive-portal
aaa authentication プロファイル,user-role,RADIUSサーバグループを紐づける設定です。
aaa authentication captive-portal "captive-ssid_A"
default-role "prov-clearpass-role"
server-group "radius-sv-group"
login-page "https://clearpass.com/onboard/provision-ssid_A.php"
white-list "web-site"
apple-cna-bypass
default-role
項目では Web 認証成功時に割り当てるロールを指定しますserver-group
項目では Web 認証で使用する RADIUS サーバグループ(ここでは ClearPass を含む RADIUS サーバグループ)を指定しますlogin-page
項目では Web 認証ページの URL を指定します。これは ClearPass Onboard のプロビジョニング設定で指定した内容に依存しますwhite-list
項目では、クライアントがアクセスできる Web サイトを netdestination プロファイルで指定しますapple-cna-bypass
項目は iOS デバイスでもプロビジョニングを行う場合に設定します
フォーマット:
aaa authentication captive-portal "プロファイル名"
default-role "ユーザロール名"
server-group "RADIUS サーバグループ名"
login-page "Web 認証ページ URL"
white-list "netdestination プロファイル名"
apple-cna-bypass
ip access-list session(プロビジョニング user-role 用)
ip access-list session はユーザーロールに割り当てるアクセスリストで、宛先IP/port などに基づいて通信を制御します。
プロビジョニング user-role 用のアクセスリストでは Web 認証画面への通信許可を設定します。
Web 認証画面は通常 ClearPass なため ClearPass の IP への許可を設定します。
ip access-list session "clearpass-ip"
any host 10.1.10.20 any permit
※10.1.10.20 の部分は ClearPass の IP
フォーマット:
ip access-list session "ACL名"
any host "ClearPass の IP" any permit
user-role(プロビジョニング user-role)
ClearPass からクライアント認証時に返されるにユーザロールに関する設定です。
user-role "provision-ssid_A"
access-list session "clearpass-ip"
access-list session logon-control
access-list session captiveportal
access-list session v6-logon-control
access-list session captiveportal6
captive-portal "captive-ssid_A"
vlan 10
access-list session
項目では、最初に Web 認証画面への通信を許可するアクセスリストを設定します。その後に、デフォルトで存在する以下アクセスリストを固定で設定します(Web 認証画面へのリダイレクトのために必要)access-list session logon-control
access-list session captiveportal
access-list session v6-logon-control
access-list session captiveportal6
captive-portal
項目では、上で作成したaaa authentication captive-portal
プロファイル名を指定しますvlan
項目では、プロビジョニング用 SSID に接続したクライアントに割り当てる Vlan ID を指定します- この Vlan を使用してクライアントは Web 認証画面を表示します
- この Vlan で DHCP サーバが動作している必要があります
フォーマット:
user-role "ユーザロール名"
access-list session "ACL 名"
access-list session logon-control
access-list session captiveportal
access-list session v6-logon-control
access-list session captiveportal6
captive-portal "プロファイル名"
vlan "Vlan ID"
参考資料
―――――――――――――