無線機能 / キャプティブポータル

キャプティブポータル(Web認証)の設定にかかわるコマンドは以下のとおりです。

実施内容
初期設定
コマンド
設定コマンド
キャプティブポータル設定の作成 未作成 captive-portal(local)(無線ネットワークモード)
 キャプティブポータルの有効・無効 無効  enable(local)(キャプティブポータル設定モード)
 認証モード クリックスルー  mode(local)(キャプティブポータル設定モード)
 認証ページプロキシ 無効  page-proxy-url(local)(キャプティブポータル設定モード)
 外部ページリダイレクト 未設定  external-page-url(local)(キャプティブポータル設定モード)
 RADIUSサーバーグループ 未設定  radius auth group(local)(キャプティブポータル設定モード)
 RADIUSパケットの検証 無効  verify-radius-packet enable(local)(キャプティブポータル設定モード)
 認証後リダイレクト(固定URL) 無効  redirect-url(local)(キャプティブポータル設定モード)
 認証後リダイレクト(セッション維持) 無効  session-keep(local)(キャプティブポータル設定モード)
 セッションタイムアウト時の動作 reauthentication  session-timeout-action(local)(キャプティブポータル設定モード)
 セッションタイムアウト間隔 3600秒  session-timeout-interval(local)(キャプティブポータル設定モード)
 RADIUSアカウンティング 無効  radius accounting enable(local)(キャプティブポータル設定モード)
 ウォールドガーデン 未設定  walled-garden entry(local)(キャプティブポータル設定モード)
 ウォールドガーデン用DNSプロキシ 無効  walled-garden-dns-proxy enable(local)(キャプティブポータル設定モード)
確認コマンド
ウォールドガーデン一覧   show wireless captive-portal network walled-garden(local)(非特権EXECモード)

Web認証では以下の方式を利用可能です。
RADIUSサーバー(外部RADIUS) RADIUSサーバーを利用して認証を行います。
クリックスルー 無線ネットワークの利用者に対して利用規約のページを表示し、ボタンクリックで規約に同意してもらうことにより通信を許可します。
外部ページリダイレクト SNSなどの第三者機関のWeb認証を使用して接続できるようになります。
認証に成功すると認証後リダイレクトページが表示されます。

RADIUSサーバー(外部RADIUS)

ここでは、任意のVAPインターフェース(セキュリティーはWPAパーソナル)において、RADIUSサーバー(外部RADIUS)を利用したWeb認証を設定する方法を説明します。
  1. Web認証で使用するローカルRADIUSサーバーの設定を行うには、RADIUSサーバーモードに移行します。
    awplus(config)# radius-server local
    

  2. ローカルRADIUSサーバーのユーザーとパスワードを設定します。ここではユーザーを「user」、パスワードを「password」とします。
    awplus(config-radsrv)# user user password password
    

  3. ローカルRADIUSサーバーを有効にします。
    awplus(config-radsrv)# server enable
    

  4. グローバルコンフィグモードに戻り、RADIUSクライアントの設定で自身のローカルRADIUSサーバーを使用するように指定します。
    ここでは、ホストのIPアドレスを「127.0.0.1」、RADIUSサーバーとの通信に使用する共有パスワードを「awplus-local-radius-server」とします。
    awplus(config-radsrv)# exit
    awplus(config)# radius-server host 127.0.0.1 key awplus-local-radius-server
    

  5. VAPインターフェースに設定する、セキュリティーとネットワークの設定をします。

    1. WPAパーソナルの設定を行います。無線設定モードに移行し、さらにWPAパーソナル設定モードに移行します。
      ここでは、セキュリティー設定番号を「2」とします。
      awplus(config)# wireless
      awplus(config-wireless)# security 2 mode wpa-personal
      

    2. WPAパーソナルのセキュリティーキーの設定を行います。
      ここでは、セキュリティーキーを「1234567890」とします。
      awplus(config-wireless-sec-wpa-psnl)# key 1234567890
      

    3. 無線設定モードに戻り、無線ネットワークモードに移行します。
      ここでは無線ネットワーク設定番号は「2」とします。
      awplus(config-wireless-sec-wpa-psnl)# exit
      awplus(config-wireless)# network 2
      

    4. SSIDを指定します。
      ここでは、「network2」とします。
      awplus(config-wireless-network)# ssid network2
      

    5. 手順3で設定したネットワークにセキュリティーを割り当てます。
      awplus(config-wireless-network)# security 2
      

  6. Web認証を有効にし、Web認証に使用するRADIUSサーバーグループを指定します。
    awplus(config-wireless-network)# web-auth radius auth group radius
    

  7. キャプティブポータル設定モードに移行し、キャプティブポータル(Web認証)を有効にします。
    awplus(config-wireless-network)# captive-portal
    awplus(config-wireless-network-cp)# enable
    

  8. Web認証の動作モード(外部RADIUS)を設定します。
    awplus(config-wireless-network-cp)# mode radius
    

  9. 認証に使用するRADIUSサーバーを指定します。
    awplus(config-wireless-network-cp)# radius auth group radius
    

  10. 外部RADIUSでは以下の機能を使用できます。必要に応じて設定を行ってください。
    • 認証ページプロキシ:外部Webサーバーに設置されたカスタムページを指定します。ここではカスタムページのアドレスを「http://www.example.com/captive_portal」とします。
      awplus(config-wireless-network-cp)# page-proxy-url http://www.example.com/captive_portal
      

    • 認証後リダイレクト(セッション維持):認証成功後、Web認証前にユーザーが指定していた本来のURLにWebブラウザーをリダイレクトさせる機能を有効にします。
      awplus(config-wireless-network-cp)# session-keep
      

    • 認証後リダイレクト(固定URL):認証成功後、固定URLにWebブラウザーをリダイレクトさせる機能を有効にします。ここでは、固定URLのアドレスを「http://www.example.com/captive_portal2」とします。
      awplus(config-wireless-network-cp)# redirect-url http://www.example.com/captive_portal2
      

    • ウォールドガーデン :Web認証が完了する前のユーザーや未認証のユーザーに対して閲覧可能なページを指定できる機能を有効にします。
      ここでは、FQDNのアドレスをワイルドカードを使用して「*.example-ex.com」とします。
      awplus(config-wireless-network-cp)# walled-garden entry *.example-ex.com
      

    • ウォールドガーデン用DNSプロキシ :ウォールドガーデン機能使用時に無線APに接続されている無線クライアントからのDNS問合せや無線クライアントへのDNS応答を代理で行う機能を有効にします。
      awplus(config-wireless-network-cp)# walled-garden-dns-proxy enable
      

  11. 無線設定モードに戻り、APプロファイルモードからAPプロファイル・無線モードに移行し、無線1を有効にします。
    awplus(config-wireless-network-cp)# exit
    awplus(config-wireless-network)# exit
    awplus(config-wireless)# ap-profile local
    awplus(config-wireless-ap-prof)# radio 1
    awplus(config-wireless-ap-prof-radio)# enable
    

  12. VAP2インターフェースにネットワーク2を割り当てます。
    awplus(config-wireless-ap-prof-radio)# vap 2 network 2
    

  13. 特権EXECモードに戻り設定を適用します。
    awplus(config-wireless-ap-prof-radio)# end
    awplus# wireless ap-configuration apply ap local
    

認証ページプロキシで使用するHTMLファイル

RADIUSサーバーを利用したWeb認証で認証ページプロキシを使用する場合は、「ベースURL」で指定したWebサーバー上のディレクトリーに以下のHTMLファイルを用意してください。

クリックスルー

ここでは、任意のVAPインターフェース(セキュリティーはWPAパーソナル)において、クリックスルー方式のWeb認証を設定する方法を説明します。
  1. VAPインターフェースに設定する、セキュリティーとネットワークの設定をします。

    1. WPAパーソナルの設定を行います。無線設定モードに移行し、さらにWPAパーソナル設定モードに移行します。
      ここでは、セキュリティー設定番号を「2」とします。
      awplus(config)# wireless
      awplus(config-wireless)# security 2 mode wpa-personal
      

    2. WPAパーソナルのセキュリティーキーの設定を行います。
      ここでは、セキュリティーキーを「1234567890」とします。
      awplus(config-wireless-sec-wpa-psnl)# key 1234567890
      

    3. 無線設定モードに戻り、無線ネットワーク設定モードに移行します。
      ここでは無線ネットワーク設定番号を「2」とします。
      awplus(config-wireless-sec-wpa-psnl)# exit
      awplus(config-wireless)# network 2
      

    4. SSIDを指定します。
      ここでは、SSIDを「network2」とします。
      awplus(config-wireless-network)# ssid network2
      

    5. 手順3で設定したネットワークにセキュリティーを割り当てます。
      awplus(config-wireless-network)# security 2
      

  2. キャプティブポータル設定モードに移行し、キャプティブポータル(Web認証)を有効化します。
    awplus(config-wireless-network)# captive-portal
    awplus(config-wireless-network-cp)# enable
    

  3. Web認証の動作モード(クリックスルー)を設定します。
    awplus(config-wireless-network-cp)# mode click-through
    

  4. クリックスルーでは以下の機能を使用できます。必要に応じて設定を行ってください。

    • 認証ページプロキシ:外部Webサーバーに設置されたカスタムページを指定します。ここではカスタムページのアドレスを「http://www.example.com/captive_portal」とします。
      awplus(config-wireless-network-cp)# page-proxy-url http://www.example.com/captive_portal
      

    • 認証後リダイレクト(セッション維持):認証成功後、Web認証前にユーザーが指定していた本来のURLにWebブラウザーをリダイレクトさせる機能を有効にします。
      awplus(config-wireless-network-cp)# session-keep
      

    • 認証後リダイレクト(固定URL):認証成功後、固定URLにWebブラウザーをリダイレクトさせる機能を有効にします。
      ここでは、固定URLのアドレスを「http://www.example.com/captive_portal2」とします。
      awplus(config-wireless-network-cp)# redirect-url http://www.example.com/captive_portal2
      

    • ウォールドガーデン :Web認証が完了する前のユーザーや未認証のユーザーに対して閲覧可能なページを指定できる機能を有効にします。
      ここでは、FQDNのアドレスをワイルドカードを使用して「*.example-ex.com」とします。
      awplus(config-wireless-network-cp)# walled-garden entry *.example-ex.com
      

    • ウォールドガーデン用DNSプロキシ :ウォールドガーデン機能使用時に無線APに接続されている無線クライアントからのDNS問合せや無線クライアントへのDNS応答を代理で行う機能を有効にします。
      awplus(config-wireless-network-cp)# walled-garden-dns-proxy enable
      

  5. 無線設定モードに戻り、APプロファイルモードからAPプロファイル・無線モードに移行し、無線1を有効にします。
    awplus(config-wireless-network-cp)# exit
    awplus(config-wireless-network)# exit
    awplus(config-wireless)# ap-profile local
    awplus(config-wireless-ap-prof)# radio 1
    awplus(config-wireless-ap-prof-radio)# enable
    

  6. VAP2インターフェースにネットワーク2を割り当てます。
    awplus(config-wireless-ap-prof-radio)# vap 2 network 2
    

  7. 特権EXECモードに戻り設定を適用します。
    awplus(config-wireless-ap-prof-radio)# end
    awplus# wireless ap-configuration apply ap local
    

認証ページプロキシで使用するHTMLファイル

クリックスルーで認証ページプロキシを使用する場合は、「ベースURL」で指定したWebサーバー上のディレクトリーに以下のHTMLファイルを用意してください。

外部ページリダイレクト

ここでは、任意のVAPインターフェース(セキュリティーはWPAパーソナル)において、外部ページリダイレクトによるWeb認証を設定する方法を説明します。
  1. VAPインターフェースに設定する、セキュリティーとネットワークの設定をします。

    1. WPAパーソナルの設定を行います。無線設定モードに移行し、さらにWPAパーソナル設定モードに移行します。
      ここでは、セキュリティー設定番号を「2」とします。
      awplus(config)# wireless
      awplus(config-wireless)# security 2 mode wpa-personal
      

    2. WPAパーソナルのセキュリティーキーの設定を行います。
      ここでは、セキュリティーキーを「1234567890」とします。
      awplus(config-wireless-sec-wpa-psnl)# key 1234567890
      

    3. 無線設定モードに戻り、無線ネットワークモードに移行します。
      ここでは無線ネットワーク設定番号は「2」とします。
      awplus(config-wireless-sec-wpa-psnl)# exit
      awplus(config-wireless)# network 2
      

    4. SSIDを指定します。
      ここでは、「network2」とします。
      awplus(config-wireless-network)# ssid network2
      

    5. 手順3で設定したネットワークにセキュリティーを割り当てます。
      awplus(config-wireless-network)# security 2
      

  2. キャプティブポータル設定モードに移行し、キャプティブポータル(Web認証)を有効にします。
    awplus(config-wireless-network)# captive-portal
    awplus(config-wireless-network-cp)# enable
    

  3. Web認証の動作モード(外部ページリダイレクト)を設定します。
    awplus(config-wireless-network-cp)# mode external-page-redirect
    

  4. 外部ページリダイレクトでは以下の機能を使用できます。必要に応じて設定を行ってください。

    • 外部ページURL:外部Webサーバーに設置されたカスタムページを指定します。ここではカスタムページのアドレスを「http://www.example.com/captive_portal」とします。
      awplus(config-wireless-network-cp)# external-page-url http://www.example.com/captive_portal
      

    • 認証後リダイレクト(セッション維持):認証成功後、Web認証前にユーザーが指定していた本来のURLにWebブラウザーをリダイレクトさせる機能を有効にします。
      awplus(config-wireless-network-cp)# session-keep
      

    • 認証後リダイレクト(固定URL):認証成功後、固定URLにWebブラウザーをリダイレクトさせる機能を有効にします。
      ここでは、固定URLのアドレスを「http://www.example.com/captive_portal2」とします。
      awplus(config-wireless-network-cp)# redirect-url http://www.example.com/captive_portal2
      

    • ウォールドガーデン :Web認証が完了する前のユーザーや未認証のユーザーに対して閲覧可能なページを指定できる機能を有効にします。
      ここでは、FQDNのアドレスをワイルドカードを使用して「*.example-ex.com」とします。
      awplus(config-wireless-network-cp)# walled-garden entry *.example-ex.com
      

    • ウォールドガーデン用DNSプロキシ :ウォールドガーデン機能使用時に無線APに接続されている無線クライアントからのDNS問合せや無線クライアントへのDNS応答を代理で行う機能を有効にします。
      awplus(config-wireless-network-cp)# walled-garden-dns-proxy enable
      

  5. 無線設定モードに戻り、APプロファイルモードからAPプロファイル・無線モードに移行し、無線1を有効にします。
    awplus(config-wireless-network-cp)# exit
    awplus(config-wireless-network)# exit
    awplus(config-wireless)# ap-profile local
    awplus(config-wireless-ap-prof)# radio 1
    awplus(config-wireless-ap-prof-radio)# enable
    

  6. VAP2インターフェースにネットワーク2を割り当てます。
    awplus(config-wireless-ap-prof-radio)# vap 2 network 2
    

  7. 特権EXECモードに戻り設定を適用します。
    awplus(config-wireless-ap-prof-radio)# end
    awplus# wireless ap-configuration apply ap local
    

外部ページリダイレクトで使用するHTMLファイル

外部ページリダイレクトを使用する場合は、下記の条件にしたがって「外部ページURL」が指し示す場所にWeb認証用のHTMLページを作成してください。
外部認証ページにリダイレクトする際に以下の情報をクエリ文字列として付加します。
また、POSTに関して、以下を満たす必要があります。
HTMLファイル設定例:
<html>
<head>
    <title>Captive Portal</title>
    <script>
        function loadaction() {
            var queryString = window.location.search;
            var queryObject = new Object();
            if (queryString) {
                queryString = queryString.substring(1);
                var parameters = queryString.split('&');
                for (var i = 0; i < parameters.length; i++) {
                    var element = parameters[i].split('=');
                    var paramName = decodeURIComponent(element[0]);
                    var paramValue = decodeURIComponent(element[1]);
                    queryObject[paramName] = paramValue;
                }
            }
            var redirectUrl = "https://" + queryObject["redirect"];
            document.forms[0].action = queryObject["switch_url"] + "?redirect=" + redirectUrl;
            if (queryObject["statusCode"] == 5) {
                window.alert("Invalid username or password!");
            }
        }
    </script>
</head>
<body onload="loadaction();">
    <form method="POST" action="">
        User Name<input type="text" name="username"><br>
        Password<input type="password" name="password"><br>
        <input type="submit" value="Connect"></input>
    </form>
</body>
</html>