はじめに
このドキュメントでは、AireOSコントローラでCisco DNA Spaceを使用してキャプティブポータルを設定する方法について説明します。
著者:Cisco TACエンジニア、Andres Silva
前提条件
要件
次の項目に関する知識があることが推奨されます。
- ワイヤレスコントローラへのコマンドラインインターフェイス(CLI)またはグラフィックユーザインターフェイス(GUI)アクセス
- Cisco DNA Spaces
使用するコンポーネント
このドキュメントの情報は、次のソフトウェアとハードウェアのバージョンに基づいています。
- 5520 Wireless LAN Controllerバージョン8.10.112.0
設定
ネットワーク図
コンフィギュレーション
WLCのCisco DNA Spaceへの接続
コントローラは、使用可能なセットアップ(Direct Connect、DNA Spaces Connector経由、またはCMXテザリングを使用)のいずれかを使用してDNA Spaceに接続する必要があります。
この例では、Direct Connectオプションが使用されていますが、キャプティブポータルはすべてのセットアップで同じ方法で設定されています。
コントローラをCisco DNA Spacesに接続するには、HTTPS経由でCisco DNA Spacesクラウドに到達できる必要があります。コントローラをDNAスペースに接続する方法の詳細については、『DNAスペースダイレクトコネクトの設定例』を参照してください。
DNAスペースでのSSIDの作成
ステップ 1:DNA SpacesのダッシュボードでCaptive Portalsをクリックします。
ステップ 2:ページの左上隅にある3行のアイコンをクリックしてキャプティブポータルメニューを開き、SSIDをクリックします。
ステップ 3:Import/Configure SSIDをクリックし、「Wireless Network」タイプとしてCUWN(CMX/WLC)を選択して、SSID名を入力します。
コントローラでのACLの設定
これはWeb認証SSIDであり、ワイヤレスデバイスがSSIDに接続してIPアドレスを受け取るとすぐに、デバイスのポリシーマネージャ状態がWebauth_Reqd状態に移行し、ACLがクライアントセッションに適用されて、デバイスが到達できるリソースが制限されます。事前認証ACLを事前認証ACLとして使用する必要があります。
ステップ 1:Security > Access Control Lists > Access Control Listsの順に移動し、Newをクリックして、次のようにワイヤレスクライアント間でDNA空間への通信を許可するルールを設定します。IPアドレスを、使用中のアカウントのDNAスペースで指定されたアドレスに置き換えます。
注:ACLで許可されるDNAスペースのIPアドレスを取得するには、ACL設定セクションの「DNAスペースでのSSIDの作成」セクションのステップ3で作成したSSIDから「手動で設定」オプションをクリックします。
SSIDは、RADIUSサーバを使用するように設定することも、使用しないように設定することもできます。キャプティブポータルルール設定のActionsセクションでSession Duration、Bandwidth Limit、またはSeamently Provision Internetが設定されている場合、SSIDはRADIUSサーバで設定する必要があります。そうでない場合は、RADIUSサーバを使用する必要はありません。DNA Spaces上のすべての種類のポータルは、両方の構成でサポートされています。
RADIUSサーバを使用しないキャプティブポータル(DNAスペース)
コントローラでのSSID設定
ステップ 1:WLAN > WLANsの順に移動します。新規 WLAN を作成してください。プロファイル名とSSIDを設定します。SSID名が、「DNAスペースでのSSIDの作成」セクションのステップ3で設定したものと同じであることを確認します。
ステップ 2:レイヤ2セキュリティを設定します。WLAN設定タブでSecurity > Layer 2タブに移動し、Layer 2 SecurityのドロップダウンメニューからNoneを選択します。MACフィルタリングが無効になっていることを確認します。
ステップ 3:レイヤ3セキュリティを設定します。WLAN設定タブでSecurity > Layer 3タブに移動し、Web Policyをレイヤ3セキュリティ方式として設定し、Passthroughを有効にし、事前認証ACLを設定し、Override Global Configを有効にして、Web Auth TypeをExternalに設定し、リダイレクトURLを設定します。
注:リダイレクトURLを取得するには、Configure Manuallyオプションをクリックします。このオプションは、SSID設定セクションの下にある、Create the SSID on DNA Spaces セクションのステップ3で作成したSSIDから選択します。
DNAスペース上のRADIUSサーバを使用したキャプティブポータル
注:DNA Spaces RADIUSサーバは、コントローラからのPAP認証のみをサポートします。
コントローラでのRADIUSサーバの設定
ステップ 1:Security > AAA > RADIUS > Authenticationの順に選択し、Newをクリックして、RADIUSサーバの情報を入力します。Cisco DNA Spacesは、ユーザ認証のためにRADIUSサーバとして機能し、2つのIPアドレスで応答できます。両方のRADIUSサーバを設定します。
注:プライマリおよびセカンダリサーバのRADIUS IPアドレスと秘密キーを取得するには、「DNAスペースでのSSIDの作成」セクションのステップ3で作成したSSIDから「手動で設定」オプションをクリックし、「RADIUSサーバの設定」セクションに移動します。
ステップ 2:アカウンティングRADIUSサーバを設定します。Security > AAA > RADIUS > Accountingの順に選択し、Newをクリックします。同じ両方のRADIUSサーバを設定します。
コントローラでのSSID設定
重要:SSID設定を開始する前に、Controller > Generalの下でWeb Radius Authenticationが「PAP」に設定されていることを確認してください。
ステップ 1:WLAN > WLANsの順に移動します。新規 WLAN を作成してください。プロファイル名とSSIDを設定します。SSID名が、「DNAスペースでのSSIDの作成」セクションのステップ3で設定したものと同じであることを確認します。
ステップ 2:レイヤ2セキュリティを設定します。WLAN設定タブで、Security > Layer 2タブに移動します。レイヤ2セキュリティをNoneに設定します。MAC フィルタリングの有効化.
ステップ 3:レイヤ3セキュリティを設定します。WLAN設定タブでSecurity > Layer 3タブに移動し、Web Policyをレイヤ3セキュリティメソッドとして設定し、On Mac Filter failureを有効にし、事前認証ACLを設定し、Override Global Configを有効にして、Web Auth TypeをExternalに設定し、リダイレクトURLを設定します。
ステップ 4:AAAサーバを設定します。WLAN設定タブでSecurity > AAA Serversタブに移動し、Authentication ServersとAccounting Serversをイネーブルにして、ドロップダウンメニューから2つのRADIUSサーバを選択します。
手順 6:Web-authユーザの認証の優先順位を設定します。WLAN設定タブでSecurity > AAA Serversタブに移動し、RADIUSを順に最初に設定します。
手順 7:WLAN設定タブでAdvancedタブに移動し、Allow AAA Overrideをイネーブルにします。
DNAスペース上にポータルを作成する
ステップ 1:DNA SpacesのダッシュボードでCaptive Portalsをクリックします。
ステップ 2:Create Newをクリックしてポータル名を入力し、ポータルを使用できる場所を選択します。
ステップ 3:認証の種類を選択し、ポータルホームページにデータキャプチャとユーザー契約を表示するかどうか、およびユーザーがメッセージの受信をオプトインで許可されるかどうかを選択します。[Next] をクリックします。
ステップ 4:データキャプチャ要素を構成します。ユーザからデータをキャプチャする場合は、Enable Data Captureボックスにチェックマークを付け、+Add Field Elementをクリックして目的のフィールドを追加します。[Next] をクリックします。
ステップ 5:Enable Terms & Conditionsにチェックマークを入れて、Save & Configure Portalをクリックします。
手順 6:必要に応じてポータルを編集し、「Save:
DNAスペースでのキャプティブポータルルールの設定
ステップ 1:キャプティブポータルメニューを開き、Captive Portal Rules:
ステップ 2:+ Create New Ruleをクリックします。ルール名を入力し、以前に設定したSSIDを選択し、このポータルルールを使用できる場所を選択します。
ステップ 3:キャプティブポータルのアクションを選択します。この場合、ルールがヒットすると、ポータルが表示されます。Save & Publishをクリックします。
確認
SSIDに接続しているクライアントのステータスを確認するには、Monitor > Clientsの順に選択し、MACアドレスをクリックしてPolicy Manager Stateを探します。
トラブルシュート
クライアントの関連付けと認証プロセスを確認するためにテストを行う前に、コントローラで次のコマンドを有効にできます。
(5520-Andressi) >debug client
(5520-Andressi) >debug web-auth redirect enable mac
次に、RADIUSサーバを使用せずにSSIDに接続しているときに、関連付け/認証プロセス中に各フェーズを識別する試みが成功したときの出力を示します。
802.11アソシエーション/認証:
*apfOpenDtlSocket: Apr 09 21:49:06.227: 34:e1:2d:23:a6:68 Received management frame ASSOCIATION REQUEST on BSSID 70:d3:79:dd:d2:0f destination addr 70:d3:79:dd:d2:0f slotid 1
*apfMsConnTask_5: Apr 09 21:49:06.227: 34:e1:2d:23:a6:68 Updating the client capabiility as 4
*apfMsConnTask_5: Apr 09 21:49:06.227: 34:e1:2d:23:a6:68 Processing assoc-req station:34:e1:2d:23:a6:68 AP:70:d3:79:dd:d2:00-01 ssid : AireOS-DNASpaces thread:bd271d6280
*apfMsConnTask_5: Apr 09 21:49:06.227: 34:e1:2d:23:a6:68 CL_EVENT_ASSOC_START (1), reasonCode (1), Result (0), Ssid (AireOS-DNASpaces), ApMac (70:d3:79:dd:d2:00), RSSI (-72), SNR (22)
*apfMsConnTask_5: Apr 09 21:49:06.228: 34:e1:2d:23:a6:68 Sending assoc-resp with status 0 station:34:e1:2d:23:a6:68 AP:70:d3:79:dd:d2:00-01 on apVapId 1
DHCPおよびレイヤ3認証:
*apfMsConnTask_5: Apr 09 21:49:06.228: 34:e1:2d:23:a6:68 Mobility query, PEM State: DHCP_REQD
*webauthRedirect: Apr 09 21:49:51.949: captive-bypass detection enabled, checking for wispr in HTTP GET, client mac=34:e1:2d:23:a6:68
*webauthRedirect: Apr 09 21:49:51.949: captiveNetworkMode enabled, mac=34:e1:2d:23:a6:68 user_agent = AnyConnect Agent 4.7.04056
*webauthRedirect: Apr 09 21:49:51.949: 34:e1:2d:23:a6:68- Preparing redirect URL according to configured Web-Auth type
*webauthRedirect: Apr 09 21:49:51.949: 34:e1:2d:23:a6:68- unable to get the hostName for virtual IP, using virtual IP =192.0.2.1
*webauthRedirect: Apr 09 21:49:51.949: 34:e1:2d:23:a6:68- Checking custom-web config for WLAN ID:1
*webauthRedirect: Apr 09 21:49:51.949: 34:e1:2d:23:a6:68- Global status is 0 on WLAN
*webauthRedirect: Apr 09 21:49:51.949: 34:e1:2d:23:a6:68- checking on WLAN web-auth type
*webauthRedirect: Apr 09 21:49:51.949: 34:e1:2d:23:a6:68- Web-auth type External, using URL:https://splash.dnaspaces.io/p2/mexeast1
*webauthRedirect: Apr 09 21:49:51.949: 34:e1:2d:23:a6:68- Added switch_url, redirect URL is now https://splash.dnaspaces.io/p2/mexeast1?switch_url=https://192.0.2.1/login.html
*webauthRedirect: Apr 09 21:49:51.949: 34:e1:2d:23:a6:68- Added ap_mac (Radio ), redirect URL is now https://splash.dnaspaces.io/p2/mexeast1?switch_url=https://192.0.2.1/login.html&ap_mac=70:d3:79:dd:d2:00
*webauthRedirect: Apr 09 21:49:51.949: 34:e1:2d:23:a6:68- Added client_mac , redirect URL is now https://splash.dnaspaces.io/p2/mexeast1?switch_url=https://192.0.2.1/login.html&ap_mac=70:d3:79:dd:d2:00&client_mac=34:e1:2d:23:a6
*webauthRedirect: Apr 09 21:49:51.950: 34:e1:2d:23:a6:68- Added wlan, redirect URL is now https://splash.dnaspaces.io/p2/mexeast1?switch_url=https://192.0.2.1/login.html&ap_mac=70:d3:79:dd:d2:00&client_mac=34:e1:2d:23:a6:68&wla
*webauthRedirect: Apr 09 21:49:51.950: 34:e1:2d:23:a6:68- http_response_msg_body1 is <HTML><HEAD><TITLE> Web Authentication Redirect</TITLE><META http-equiv="Cache-control" content="no-cache"><META http-equiv="Pragma" content="
*webauthRedirect: Apr 09 21:49:51.950: 34:e1:2d:23:a6:68- added redirect=, URL is now https://splash.dnaspaces.io/p2/mexeast1?switch_url=https://192.0.2.1/login.html&ap_mac=70:d3:79:dd:d2:00&client_mac=34:e1:2d:23:a6:68&wlan=Ai
*webauthRedirect: Apr 09 21:49:51.950: 34:e1:2d:23:a6:68- str1 is now https://splash.dnaspaces.io/p2/mexeast1?switch_url=https://192.0.2.1/login.html&ap_mac=70:d3:79:dd:d2:00&client_mac=34:e1:2d:23:a6:68&wlan=AireOS-DNASpaces&r
*webauthRedirect: Apr 09 21:49:51.950: 34:e1:2d:23:a6:68- Message to be sent is
HTTP/1.1 200 OK
Location: https://splash.dnaspaces.io/p2/mexeast1?switch_url=https://192.0.2.1/login.html&ap_mac=70:d3:79:dd:d2:00&client_mac=34:
*webauthRedirect: Apr 09 21:49:51.950: 34:e1:2d:23:a6:68- 200 send_data =HTTP/1.1 200 OK
Location: https://splash.dnaspaces.io/p2/mexeast1?switch_url=https://192.0.2.1/login.html&ap_mac=70:d3:79:dd:d2:00&client_mac=34:e1:2d:23
*webauthRedirect: Apr 09 21:49:51.950: 34:e1:2d:23:a6:68- send data length=688
*webauthRedirect: Apr 09 21:49:51.950: 34:e1:2d:23:a6:68- Url:https://splash.dnaspaces.io/p2/mexeast1
*webauthRedirect: Apr 09 21:49:51.950: 34:e1:2d:23:a6:68- cleaning up after send
レイヤ3認証に成功し、クライアントをRUN状態に移行します。
*emWeb: Apr 09 21:49:57.633: Connection created for MAC:34:e1:2d:23:a6:68
*emWeb: Apr 09 21:49:57.634:
ewaURLHook: Entering:url=/login.html, virtIp = 192.0.2.1, ssl_connection=0, secureweb=1
*ewmwebWebauth1: Apr 09 21:49:57.634: 34:e1:2d:23:a6:68 10.10.30.42 WEBAUTH_NOL3SEC (14) Change state to RUN (20) last state WEBAUTH_NOL3SEC (14)
*ewmwebWebauth1: Apr 09 21:49:57.634: 34:e1:2d:23:a6:68 CL_EVENT_WEB_AUTH_DONE (8), reasonCode (0), Result (0), ServerIp (), UserName ()
*ewmwebWebauth1: Apr 09 21:49:57.634: 34:e1:2d:23:a6:68 CL_EVENT_RUN (9), reasonCode (0), Result (0), Role (1), VLAN/VNID (20), Ipv4Addr (10.10.30.42), Ipv6Present (No)
*ewmwebWebauth1: Apr 09 21:49:57.634: 34:e1:2d:23:a6:68 10.10.30.42 RUN (20) Successfully plumbed mobile rule (IPv4 ACL ID 255, IPv6 ACL ID 255, L2 ACL ID 255,URL ACL ID 255,URL ACL Action 0)
*emWeb: Apr 09 21:49:57.634: User login successful, presenting login success page to user