第6編
AccessDefender

Web認証の構成例と設定例

Web認証の構成例と設定例を示します。

Web認証の設定例

Web認証の構成例と設定例を示します。この例では以下のように設定しています。

Web認証の設定例
項目設定
RADIUS認証 デフォルトのRADIUSサーバーグループ「radius」で使用
RADIUSサーバー
  • IPアドレス:172.16.1.101
  • 共有鍵:apresia
認証クライアントの最大数 256
Web認証有効ポート ポート1/0/1からポート1/0/5
認証用Webサーバー http://192.0.2.100:80/、またはhttps://192.0.2.100:443/
※HTTPプロトコル(80)とHTTPSプロトコル(443)はデフォルト有効
HTTPS(TCPポート番号443)に対する認証ページのリダイレクト 無効
エージングログアウト時間 1時間

また、未認証クライアントが認証前にDHCPでIPアドレスを取得できるように、「DHCPサーバー宛てのDHCPパケット(UDP宛先ポート番号:67)をバイパス」する認証バイパスを設定しています。

Web認証の構成例

  • VLAN 10、VLAN 100を作成し、構成例のようにVLANを割り当てます。
    sw1# configure terminal
    sw1(config)# vlan 10,100
    sw1(config-vlan)# exit
    sw1(config)#
    sw1(config)# interface range port 1/0/1-5
    sw1(config-if-port-range)# switchport mode access 
    sw1(config-if-port-range)# switchport access vlan 10
    sw1(config-if-port-range)# exit
    sw1(config)#
    sw1(config)# interface port 1/0/49
    sw1(config-if-port)# switchport mode trunk
    sw1(config-if-port)# switchport trunk allowed vlan 10,100
    sw1(config-if-port)# exit
    sw1(config)#
  • VLAN 100インターフェースに管理用IPアドレス[192.168.100.100/24]を設定します。また、本設定例ではデフォルトスタティックルートを[192.168.100.254]宛てに設定して、経路を解決しています。
    sw1(config)# interface vlan 100
    sw1(config-if-vlan)# ip address 192.168.100.100/24
    sw1(config-if-vlan)# exit
    sw1(config)# ip route 0.0.0.0/0 192.168.100.254
    sw1(config)#
  • 装置のAAAを有効化します。また、Web認証で使用する認証方式リスト[ID:1]を、デフォルトのRADIUSサーバーグループ「radius」に指定します。
    sw1(config)# aaa new-model
    sw1(config)# aaa authentication web-auth 1 default group radius
    sw1(config)#
  • RADIUSサーバーを、IPアドレス[172.16.1.101]、共有鍵[apresia]で設定します。設定したRADIUSサーバーは、所属するRADIUSグループを指定しない場合はデフォルトのRADIUSサーバーグループ「radius」に所属します。
    sw1(config)# radius-server host 172.16.1.101 key apresia
    sw1(config)#
  • AccessDefender設定モードに遷移し、認証クライアントの最大数を[256]に設定します。
    sw1(config)# access-defender
    sw1(config-a-def)# total-client 256
    sw1(config-a-def)#
  • ポート1/0/1からポート1/0/5でWeb認証を有効に、認証用WebサーバーのIPアドレスを[192.0.2.100]に設定します。装置の認証用Webサーバーでは、HTTPプロトコル(TCPポート番号80)とHTTPSプロトコル(TCPポート番号443)はデフォルト有効になっています。また、エージングログアウト時間を[1時間]に設定します。
    sw1(config-a-def)# authentication interface port 1/0/1-5 web
    sw1(config-a-def)# web-authentication http-ip ipv4 192.0.2.100
    sw1(config-a-def)# logout aging-time 0 0 1 web
    sw1(config-a-def)#
  • HTTPS(TCPポート番号443)に対する認証ページのリダイレクトを無効にします。
    sw1(config-a-def)# web-authentication redirect disable https
    sw1(config-a-def)# exit
    sw1(config)#
  • Web認証を有効にします。
    sw1(config)# web-authentication enable
    sw1(config)#
  • 認証バイパス設定のために、拡張IPアクセスリスト[IPv4-EX-ACL]を作成し、以下のルールを設定します。

    ルール10(authentication-bypass):宛先UDPポート番号[67]

    sw1(config)# ip access-list extended IPv4-EX-ACL
    sw1(config-ip-ext-acl)# 10 permit authentication-bypass udp any any eq 67
    sw1(config-ip-ext-acl)# exit
    sw1(config)#
  • 設定したアクセスリストを認証ポート(ポート1/0/1からポート1/0/5)に適用します。
    sw1(config)# interface range port 1/0/1-5
    sw1(config-if-port-range)# ip access-group IPv4-EX-ACL in
    
    The remaining applicable IP related access entries are 255
    sw1(config-if-port-range)# end
    sw1#
  • 実施後のAccessDefender関連の設定を以下に抜粋します。
    # AAA
    
    aaa new-model
    radius-server host 172.16.1.101 key apresia
    aaa authentication web-auth 1 default group radius
    
    # ACCESS-DEFENDER
    
    access-defender
     total-client 256
     logout aging-time 0 0 1 web
    
    # WEB-AUTHENTICATION
    
    access-defender
     authentication interface port 1/0/1-1/0/5 web
     web-authentication http-ip ipv4 192.0.2.100
     web-authentication redirect disable https
    web-authentication enable
  • 実施後のアクセスリスト関連の設定を以下に抜粋します。
    # ACL
    
    ip access-list extended IPv4-EX-ACL 3999
     10 permit authentication-bypass udp any any eq bootps
    interface port 1/0/1
     ip access-group IPv4-EX-ACL in
    interface port 1/0/2
     ip access-group IPv4-EX-ACL in
    interface port 1/0/3
     ip access-group IPv4-EX-ACL in
    interface port 1/0/4
     ip access-group IPv4-EX-ACL in
    interface port 1/0/5
     ip access-group IPv4-EX-ACL in

Web認証でダイナミックVLANを使用する場合

Web認証でダイナミックVLANを使用する場合の構成例と設定例を示します。この例では、認証ポートには暫定VLAN 4094を割り当てておき、ダイナミックVLANを使用して、ユーザーごとにVLAN 10またはVLAN 20が割り当てられるようにしています。

Web認証でダイナミックVLANを使用する場合の設定例
項目設定
RADIUS認証 デフォルトのRADIUSサーバーグループ「radius」で使用
RADIUSサーバー
  • IPアドレス:172.16.1.101
  • 共有鍵:apresia
認証クライアントの最大数 256
Web認証有効ポート ポート1/0/1からポート1/0/5
認証用Webサーバー http://192.0.2.100:80/、またはhttps://192.0.2.100:443/
※HTTPプロトコル(80)とHTTPSプロトコル(443)はデフォルト有効
リダイレクト先URL (自装置の認証ページ)https://192.0.2.100:443/www/AuthLogin.html
エージングログアウト時間 1時間

また、暫定VLANで未認証クライアントにIPアドレスを割り当てるための暫定DHCPサーバーは、この例では自装置に設定しています。

Web認証でダイナミックVLANを使用する場合の構成例

  • VLAN 10、VLAN 20、VLAN 100、VLAN 4094を作成し、構成例のようにVLANを割り当てます。
    sw1# configure terminal
    sw1(config)# vlan 10,20,100,4094
    sw1(config-vlan)# exit
    sw1(config)#
    sw1(config)# interface range port 1/0/1-5
    sw1(config-if-port-range)# switchport mode access
    sw1(config-if-port-range)# switchport access vlan 4094
    sw1(config-if-port-range)# exit
    sw1(config)#
    sw1(config)# interface port 1/0/49
    sw1(config-if-port)# switchport mode trunk
    sw1(config-if-port)# switchport trunk allowed vlan 10,20,100
    sw1(config-if-port)# exit
    sw1(config)#
  • VLAN 100インターフェースに管理用IPアドレス[192.168.100.100/24]を設定します。また、本設定例ではデフォルトスタティックルートを[192.168.100.254]宛てに設定して、経路を解決しています。
    sw1(config)# interface vlan 100
    sw1(config-if-vlan)# ip address 192.168.100.100/24
    sw1(config-if-vlan)# exit
    sw1(config)# ip route 0.0.0.0/0 192.168.100.254
    sw1(config)#
  • 装置のAAAを有効化します。また、Web認証で使用する認証方式リスト[ID:1]を、デフォルトのRADIUSサーバーグループ「radius」に指定します。
    sw1(config)# aaa new-model
    sw1(config)# aaa authentication web-auth 1 default group radius
    sw1(config)#
  • RADIUSサーバーを、IPアドレス[172.16.1.101]、共有鍵[apresia]で設定します。設定したRADIUSサーバーは、所属するRADIUSグループを指定しない場合はデフォルトのRADIUSサーバーグループ「radius」に所属します。
    sw1(config)# radius-server host 172.16.1.101 key apresia
    sw1(config)#
  • AccessDefender設定モードに遷移し、認証クライアントの最大数を[256]に設定します。
    sw1(config)# access-defender
    sw1(config-a-def)# total-client 256
    sw1(config-a-def)#
  • ポート1/0/1からポート1/0/5でWeb認証を有効に、認証用WebサーバーのIPアドレスを[192.0.2.100]に設定します。装置の認証用Webサーバーでは、HTTPプロトコル(TCPポート番号80)とHTTPSプロトコル(TCPポート番号443)はデフォルト有効になっています。また、エージングログアウト時間を[30分]に設定します。
    sw1(config-a-def)# authentication interface port 1/0/1-5 web
    sw1(config-a-def)# web-authentication http-ip ipv4 192.0.2.100
    sw1(config-a-def)# logout aging-time 0 30 web
    sw1(config-a-def)#
  • リダイレクト先の自装置の認証ページをHTTPSに固定するために、リダイレクト先URLを[https://192.0.2.100:443/www/AuthLogin.html]に設定します。 ※設定例が1行に収まるように、コマンドを省略形式で実施しています。
    sw1(config-a-def)# web-a red url https://192.0.2.100:443/www/AuthLogin.html
    sw1(config-a-def)# end
    sw1#
  • Web認証が無効な状態で、自装置のWebサーバー用の証明書と秘密鍵をTFTPサーバーからダウンロードします。この例では、TFTPサーバーのIPアドレス[172.16.1.202]、証明書のファイル名[test.crt]、秘密鍵のファイル名[test.key]として実施しています。また、実施前の状態が不明な場合を想定し、access-defender erase ssl-filesコマンドを実施してからダウンロードしています。 ※ダウンロード済みのSSLサーバー証明書および秘密鍵が装置上に存在する場合、access-defender erase ssl-filesコマンドで既存のファイルを削除してから証明書、秘密鍵をダウンロードしてください。
    sw1# access-defender erase ssl-files
    Erasing SSL files in FLASH.......... Done.
    
    
    sw1# copy tftp: https-certificate
    
    Address of remote host []? 172.16.1.202
    Source filename []? test.crt
    Destination filename https-certificate? [y/n]:  y
    
    % Importing certificate PEM file...
    Reading file from tftp://172.16.1.202/test.crt
    Loading test.crt from 172.16.1.202 (via Port1/0/49):!
    [OK - 4474 bytes]
    
    
    sw1# copy tftp: https-private-key
    
    Address of remote host []? 172.16.1.202
    Source filename []? test.key
    Destination filename https-privatekey? [y/n]:  y
    
    % Importing private key PEM file...
    Reading file from tftp://172.16.1.202/test.key
    Loading test.key from 172.16.1.202 (via Port1/0/49):!
    [OK - 1679 bytes]
    
    
    sw1#
  • Web認証を有効にします。
    sw1# configure terminal
    sw1(config)# web-authentication enable
    sw1(config)#
  • 未認証クライアントに暫定的にIPアドレスを付与するための暫定DHCPサーバーを設定します。まずは、VLAN 4094インターフェースにIPアドレス[10.1.1.254/24]を設定します。
    sw1(config)# interface vlan 4094
    sw1(config-if-vlan)# ip address 10.1.1.254/24
    sw1(config-if-vlan)# exit
    sw1(config)#
  • 暫定DHCPサーバー用のDHCPアドレスプール[temp-pool]を作成し、以下の内容で設定して有効にします。

    サブネット[10.1.1.0/24]、デフォルトルーター[10.1.1.254]、リース期間[30秒]

    sw1(config)# ip dhcp pool temp-pool
    sw1(config-dhcp-pool)# network 10.1.1.0/24
    sw1(config-dhcp-pool)# default-router 10.1.1.254
    sw1(config-dhcp-pool)# lease 0 0 0 30
    sw1(config-dhcp-pool)# exit
    sw1(config)# service dhcp
    sw1(config)# end
    sw1#
  • 実施後のAccessDefender関連の設定を以下に抜粋します。
    # AAA
    
    aaa new-model
    radius-server host 172.16.1.101 key apresia
    aaa authentication web-auth 1 default group radius
    
    # ACCESS-DEFENDER
    
    access-defender
     total-client 256
     logout aging-time 0 30 web
    
    # WEB-AUTHENTICATION
    
    access-defender
     authentication interface port 1/0/1-1/0/5 web
     web-authentication http-ip ipv4 192.0.2.100
     web-authentication redirect url https://192.0.2.100:443/www/AuthLogin.html
    web-authentication enable

外部Webサーバーの認証ページにリダイレクトする場合

外部Webサーバーの認証ページにリダイレクトする場合の構成例と設定例を示します。この例では以下のように設定しています。

外部Webサーバーの認証ページにリダイレクトする場合の設定例
項目設定
RADIUS認証 デフォルトのRADIUSサーバーグループ「radius」で使用
RADIUSサーバー
  • IPアドレス:172.16.1.101
  • 共有鍵:apresia
認証クライアントの最大数 256
Web認証有効ポート ポート1/0/1からポート1/0/5
自装置の認証用Webサーバー http://192.0.2.100:80/、またはhttps://192.0.2.100:443/
※HTTPプロトコル(80)とHTTPSプロトコル(443)はデフォルト有効
リダイレクト先URL (外部Webサーバーの認証ページ)http://172.16.1.200/test.html
エージングログアウト時間 1時間

また、未認証クライアントが認証前に外部Webサーバーの認証ページを取得できるように、「外部Webサーバー宛ての通信をバイパス」する認証バイパスも設定しています。

外部Webサーバーの認証ページにリダイレクトする場合の構成例

  • VLAN 10、VLAN 100を作成し、構成例のようにVLANを割り当てます。
    sw1# configure terminal
    sw1(config)# vlan 10,100
    sw1(config-vlan)# exit
    sw1(config)#
    sw1(config)# interface range port 1/0/1-5
    sw1(config-if-port-range)# switchport mode access
    sw1(config-if-port-range)# switchport access vlan 10
    sw1(config-if-port-range)# exit
    sw1(config)#
    sw1(config)# interface port 1/0/49
    sw1(config-if-port)# switchport mode trunk 
    sw1(config-if-port)# switchport trunk allowed vlan 10,100
    sw1(config-if-port)# exit
    sw1(config)#
  • VLAN 100インターフェースに管理用IPアドレス[192.168.100.100/24]を設定します。また、本設定例ではデフォルトスタティックルートを[192.168.100.254]宛てに設定して、経路を解決しています。
    sw1(config)# interface vlan 100
    sw1(config-if-vlan)# ip address 192.168.100.100/24
    sw1(config-if-vlan)# exit
    sw1(config)# ip route 0.0.0.0/0 192.168.100.254
    sw1(config)#
  • 装置のAAAを有効化します。また、Web認証で使用する認証方式リスト[ID:1]を、デフォルトのRADIUSサーバーグループ「radius」に指定します。
    sw1(config)# aaa new-model
    sw1(config)# aaa authentication web-auth 1 default group radius
    sw1(config)#
  • RADIUSサーバーを、IPアドレス[172.16.1.101]、共有鍵[apresia]で設定します。設定したRADIUSサーバーは、所属するRADIUSグループを指定しない場合はデフォルトのRADIUSサーバーグループ「radius」に所属します。
    sw1(config)# radius-server host 172.16.1.101 key apresia
    sw1(config)#
  • AccessDefender設定モードに遷移し、認証クライアントの最大数を[256]に設定します。
    sw1(config)# access-defender
    sw1(config-a-def)# total-client 256
    sw1(config-a-def)#
  • ポート1/0/1からポート1/0/5でWeb認証を有効に、認証用WebサーバーのIPアドレスを[192.0.2.100]に設定します。装置の認証用Webサーバーでは、HTTPプロトコル(TCPポート番号80)とHTTPSプロトコル(TCPポート番号443)はデフォルト有効になっています。また、エージングログアウト時間を[1時間]に設定します。
    sw1(config-a-def)# authentication interface port 1/0/1-5 web
    sw1(config-a-def)# web-authentication http-ip ipv4 192.0.2.100
    sw1(config-a-def)# logout aging-time 0 0 1 web
    sw1(config-a-def)#
  • リダイレクト先URLを、外部Webサーバーの認証ページ[http://172.16.1.200/test.html]に設定します。
    sw1(config-a-def)# web-authentication redirect url http://172.16.1.200/test.html
    sw1(config-a-def)# exit
    sw1(config)#
  • Web認証を有効にします。
    sw1(config)# web-authentication enable
    sw1(config)#
  • 認証バイパス設定のために、標準IPアクセスリスト[IPv4-ACL]を作成し、以下のルールを設定します。

    ルール10(authentication-bypass):宛先IPアドレス[172.16.1.200]

    sw1(config)# ip access-list IPv4-ACL
    sw1(config-ip-acl)# 10 permit authentication-bypass any host 172.16.1.200
    sw1(config-ip-acl)# exit
    sw1(config)#
  • 設定したアクセスリストを認証ポート(ポート1/0/1からポート1/0/5)に適用します。
    sw1(config)# interface range port 1/0/1-5
    sw1(config-if-port-range)# ip access-group IPv4-ACL in
    
    The remaining applicable IP related access entries are 255
    sw1(config-if-port-range)# end
    sw1#
  • 実施後のAccessDefender関連の設定を以下に抜粋します。
    # AAA
    
    aaa new-model
    radius-server host 172.16.1.101 key apresia
    aaa authentication web-auth 1 default group radius
    
    # ACCESS-DEFENDER
    
    access-defender
     total-client 256
     logout aging-time 0 0 1 web
    
    # WEB-AUTHENTICATION
    
    access-defender
     authentication interface port 1/0/1-1/0/5 web
     web-authentication http-ip ipv4 192.0.2.100
     web-authentication redirect url http://172.16.1.200/test.html
    web-authentication enable
  • 実施後のアクセスリスト関連の設定を以下に抜粋します。
    # ACL
    
    ip access-list IPv4-ACL 1999
     10 permit authentication-bypass any host 172.16.1.200
    interface port 1/0/1
     ip access-group IPv4-ACL in
    interface port 1/0/2
     ip access-group IPv4-ACL in
    interface port 1/0/3
     ip access-group IPv4-ACL in
    interface port 1/0/4
     ip access-group IPv4-ACL in
    interface port 1/0/5
     ip access-group IPv4-ACL in

個別Web認証ページを使用する場合

「Web認証の設定例」において、ポート1/0/3で以下を使用する場合の構成例と設定例を示します。

  • 個別Web認証ページ
  • Web認証のインターフェースごとの認証方式設定
補 足

個別Web認証ページは、NP2100の1.09.02以降、NP2000の1.09.01以降でサポートしています。

補 足

Web認証のインターフェースごとの認証方式設定は、NP2100の1.09.02以降、NP2000の1.09.01以降でサポートしています。

この例では以下のように設定しています。

個別Web認証ページの設定例
項目設定
ポート1/0/3用 Web認証の認証方式設定
  • RADIUSサーバーグループ「PORT-AUTH」を使用
    • RADIUSサーバー:172.16.1.102
    • 共有鍵:test-apresia
ポート1/0/3用 個別Web認証ページ
  • 個別Web認証ページID:3
  • 以下のページを個別Web認証ページとして、TFTPサーバー:172.16.1.10からダウンロードして使用する
    • ログイン認証ページ:test_login.html
    • 認証成功ページ:test_login-success.html
    • 認証失敗ページ:test_login-failure.html
  • それ以外の認証ページはデフォルトのページを使用する
  • 「Web認証の設定例」を実施します。
  • RADIUSサーバーを、IPアドレス[172.16.1.102]、共有鍵[test-apresia]で設定します。
    sw1# configure terminal 
    sw1(config)# radius-server host 172.16.1.102 key test-apresia
    sw1(config)#
  • RADIUSサーバーグループ「PORT-AUTH」を作成し、前の手順で設定したRADIUSサーバーを、このグループに所属するように設定します。
    sw1(config)# aaa group server radius PORT-AUTH
    sw1(config-sg-radius)# server 172.16.1.102
    sw1(config-sg-radius)# exit
    sw1(config)#
  • ポート1/0/3のWeb認証で使用する認証方式リスト[ID:1]を、ユーザー設定のRADIUSサーバーグループ「PORT-AUTH」に指定します。
    sw1(config)# aaa authentication web-auth 1 default group PORT-AUTH interface port 1/0/3
    sw1(config)#
  • ポート1/0/3で使用する個別Web認証ページ[ID:3]を設定します。
    sw1(config-a-def)# web-authentication interface port 1/0/3 webpages 3 
    sw1(config-a-def)# end
    sw1#
  • 個別Web認証ページ[ID:3]で使用する以下の認証ページをTFTPサーバー[172.16.1.10]からダウンロードします。

    ログイン認証ページ:test_login.html

    認証成功ページ:test_login-success.html

    認証失敗ページ:test_login-failure.html

    sw1# copy tftp: webpages 3 login-page
    
    Address of remote host []? 172.16.1.10
    Source filename []? test_login.html
    Destination filename 03-login-page? [y/n]:  y
    
     Accessing tftp://172.16.1.10/test_login.html...
     Transmission start... 
     Transmission finished, file length 2427 bytes.
     Please wait, programming flash.............. Done. 
    
    sw1#
    
    sw1# copy tftp: webpages 3 login-success-page 
    
    Address of remote host []? 172.16.1.10
    Source filename []? test_login-success.html
    Destination filename 03-login-success-page? [y/n]:  y
    
     Accessing tftp://172.16.1.10/test_login-success.html...
     Transmission start... 
     Transmission finished, file length 1332 bytes.
     Please wait, programming flash.............. Done. 
    
    sw1#
    
    sw1# copy tftp: webpages 3 login-failure-page 
    
    Address of remote host []? 172.16.1.10
    Source filename []? test_login-failure.html
    Destination filename 03-login-failure-page? [y/n]:  y
    
     Accessing tftp://172.16.1.10/test_login-failure.html...
     Transmission start... 
     Transmission finished, file length 1011 bytes.
     Please wait, programming flash.............. Done. 
    
    sw1#
  • 実施後のAccessDefender関連の設定を以下に抜粋します。
    # AAA
    
    aaa new-model
    radius-server host 172.16.1.101 key apresia
    radius-server host 172.16.1.102 key test-apresia
    aaa group server radius PORT-AUTH
     server 172.16.1.102
    aaa authentication web-auth 1 default group radius
    aaa authentication web-auth 1 default group PORT-AUTH interface port 1/0/3
    
    # ACCESS-DEFENDER
    
    access-defender
     total-client 256
     logout aging-time 0 0 1 web
    
    # WEB-AUTHENTICATION
    
    access-defender
     authentication interface port 1/0/1-1/0/5 web
     web-authentication http-ip ipv4 192.0.2.100
     web-authentication redirect disable https
     web-authentication interface port 1/0/3 webpages 3
    web-authentication enable
  • 設定後の個別Web認証ページの情報を確認します。
    sw1# show access-defender webpages 
    
    WEBPAGES-ID:3 
    Filename                        Size                 Date 
    --------------------------------------------------------- 
    03-login-page                   2427 Nov 20 2020 16:02:18 
    03-login-success-page           1332 Nov 20 2020 16:03:26 
    03-login-failure-page           1011 Nov 20 2020 16:04:03 

ページトップへ