소개
이 문서에서는 Cisco Spaces에서 종속 포털을 구성하는 방법에 대해 설명합니다.
사전 요구 사항
이 문서에서는 Catalyst 9800 Wireless LAN Controller(C9800 WLC)의 클라이언트가 Spaces를 외부 웹 인증 로그인 페이지로 사용할 수 있습니다.
요구 사항
다음 주제에 대한 지식을 보유하고 있으면 유용합니다.
- 9800 무선 컨트롤러에 대한 CLI(Command Line Interface) 또는 GUI(Graphic User Interface) 액세스
- Cisco Spaces
사용되는 구성 요소
이 문서의 정보는 다음 소프트웨어 및 하드웨어 버전을 기반으로 합니다.
이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다. 이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다. 현재 네트워크가 작동 중인 경우 모든 명령의 잠재적인 영향을 미리 숙지하시기 바랍니다.
배경 정보
웹 인증은 신청자 또는 클라이언트 유틸리티가 필요 없는 간단한 레이어 3 인증 방법입니다. 이 작업을 수행할 수 있습니다
a) C9800 WLC의 내부 페이지(있는 그대로 또는 수정 후)
b) C9800 WLC에 업로드된 맞춤형 로그인 번들을 사용하여
c) 외부 서버에서 호스팅되는 사용자 지정 로그인 페이지입니다.
Spaces에서 제공하는 종속 포털을 활용하는 것은 기본적으로 C9800 WLC에서 클라이언트에 대한 외부 웹 인증을 구현하는 방법입니다.
외부 웹 인증 프로세스는 Cisco Catalyst 9800 Series 컨트롤러의 웹 기반 인증에서 자세히 설명합니다.
C9800 WLC에서 가상 IP 주소는 전역 매개변수 맵으로 정의되며 일반적으로 192.0.2.1입니다
구성
네트워크 다이어그램
9800 컨트롤러를 Cisco Spaces에 연결
컨트롤러를 Direct Connect, Spaces Connector 또는 CMX Tethering 옵션 중 하나로 Spaces에 연결해야 합니다.
이 예에서는 종속 포털이 모든 설정에 대해 동일한 방식으로 구성되었지만 직접 연결 옵션이 사용 중입니다.
컨트롤러를 Cisco Spaces에 연결하려면 HTTPS를 통해 Cisco Spaces Cloud에 연결할 수 있어야 합니다. 9800 컨트롤러를 스페이스에 연결하는 방법에 대한 자세한 내용은 Spaces - 9800 Controller Direct Connect 링크를 참조하십시오.
스페이스에서 SSID 생성
1단계. Spaces(공간)의 대시보드에서 Captive Portals(종속 포털)를 클릭합니다.
2단계. 종속 포털별 메뉴를 열고 페이지의 왼쪽 위 모서리에 있는 세 개의 라인 아이콘을 클릭한 다음 SSIDs를 클릭합니다.
3단계. Import /Configure SSID(SSID 가져오기/구성)를 클릭하고 Wireless Network type(무선 네트워크 유형)으로 CUWN(CMX/WLC)을 선택하고 SSID 이름을 입력합니다.
9800 컨트롤러의 ACL 및 URL 필터 컨피그레이션
무선 클라이언트의 트래픽은 인증을 완료할 때까지 네트워크에서 허용되지 않습니다. 웹 인증의 경우, 이를 완료하기 위해 무선 클라이언트가 이 SSID에 연결되고 IP 주소를 수신한 다음 클라이언트 정책 관리자 상태가 Webauth_reqd 상태로 이동합니다. 클라이언트가 아직 인증되지 않았으므로 클라이언트 IP 주소에서 오는 모든 트래픽 소싱은 DHCP, DNS 및 HTTP(가로채기 및 리디렉션)를 제외하고 삭제됩니다.
기본적으로 9800은 웹 인증 WLAN을 설정할 때 하드 코딩된 사전 인증 ACL을 생성합니다. 이러한 하드코딩된 ACL은 DHCP, DNS 및 외부 웹 인증 서버로의 트래픽을 허용합니다. 나머지 모든 트래픽은 http 트래픽처럼 리디렉션됩니다.
그러나 특정 비 HTTP 트래픽 유형을 통과하도록 허용해야 하는 경우 사전 인증 ACL을 구성할 수 있습니다. 그런 다음 이 섹션의 1단계에서 기존 하드코딩된 사전 인증 ACL의 내용을 모방하고 필요에 맞게 확장해야 합니다.
1단계. 현재 하드코딩된 ACL을 확인합니다.
CLI 구성:
Andressi-9800L#show ip access list
Extended IP access list WA-sec-10.235.248.212
10 permit tcp any host 10.235.248.212 eq www
20 permit tcp any host 10.235.248.212 eq 443
30 permit tcp host 10.235.248.212 eq www any
40 permit tcp host 10.235.248.212 eq 443 any
50 permit tcp any any eq domain
60 permit udp any any eq domain
70 permit udp any any eq bootpc
80 permit udp any any eq bootps
90 deny ip any any
Extended IP access list WA-v4-int-10.235.248.212
10 deny tcp any host 10.235.248.212 eq www
20 deny tcp any host 10.235.248.212 eq 443
30 permit tcp any any eq www
40 permit tcp any host 192.0.2.1 eq 443
WA-sec-10.235.248.212는 WA(Automatic Web Auth) 보안(sec) ACL 또는 포털 IP 10.235.248.212이므로 이 이름으로 호출됩니다. 보안 ACL은 허용(허용 시) 또는 삭제(거부 시)할 항목을 정의했습니다. Wa-v4-int는 가로채기 ACL, 즉 punt ACL 또는 redirect ACL이며 리디렉션을 위해 CPU로 전송되는 것(허용 시) 또는 데이터 플레인으로 전송되는 것(거부 시)을 정의합니다.
WA-v4-int10.235.248.212는 클라이언트에서 오는 트래픽에 먼저 적용되며, 스페이스 포털 IP 10.235.248.212로 향하는 HTTP 트래픽을 데이터 플레인에 보관합니다(아직 삭제 또는 전달 작업이 아니라 데이터 플레인으로 전달함). 모든 HTTP(s) 트래픽을 CPU로 전송합니다(웹 서버에서 서비스하는 가상 IP 트래픽을 제외한 리디렉션의 경우). 다른 유형의 트래픽은 데이터 플레인에 제공됩니다.
WA-sec-10.235.248.212는 웹 인증 매개변수 맵에서 구성한 Cisco DNA 공간 IP 10.235.248.212에 대한 HTTP 및 HTTPS 트래픽을 허용하며, DNS 및 DHCP 트래픽도 허용하고 나머지는 삭제합니다. 가로채려는 HTTP 트래픽은 이 ACL에 도달하기 전에 이미 가로채기되었으므로 이 ACL에서 처리할 필요가 없습니다.
참고: ACL에서 허용할 스페이스의 IP 주소를 가져오려면 ACL 컨피그레이션 섹션의 3단계에서 생성한 SSID에서 Configure Manually(수동으로 구성) 옵션을 클릭합니다. 예는 문서의 끝에 있는 What are the IP addresses that Spaces uses(스페이스에서 사용하는 IP 주소는 무엇입니까) 섹션에 있습니다.
스페이스는 2개의 IP 주소를 사용하며 1단계의 메커니즘은 하나의 포털 IP만 허용합니다. 더 많은 HTTP 리소스에 대한 사전 인증 액세스를 허용하려면 URL 필터에 URL을 입력하는 웹 사이트와 관련된 IP에 대해 가로채기(리디렉션) 및 보안(사전 인증) ACL에 동적으로 구멍을 뚫는 URL 필터를 사용해야 합니다. DNS 요청은 9800에서 해당 URL의 IP 주소를 학습하고 이를 동적으로 ACL에 추가하기 위해 동적으로 스누핑됩니다.
2단계. Spaces 도메인을 허용하도록 URL 필터를 구성합니다.
Configuration(컨피그레이션) > Security(보안) > URL Filters(URL 필터)로 이동합니다. Add(+추가)를 클릭하고 목록 이름을 구성합니다. 유형으로 PRE-AUTH, 작업으로 PERMIT, URL splash.dnaspaces.io(또는 EMEA 포털을 사용하는 경우 .eu)를 선택합니다.
CLI 구성:
Andressi-9800L(config)#urlfilter list <url-filter name>
Andressi-9800L(config-urlfilter-params)#action permit
Andressi-9800L(config-urlfilter-params)#url splash.dnaspaces.io
RADIUS 서버를 사용하거나 사용하지 않도록 SSID를 구성할 수 있습니다. 종속 포털 규칙 컨피그레이션의 Actions(작업) 섹션에서 세션 기간, 대역폭 제한 또는 원활한 인터넷 프로비저닝을 구성한 경우 SSID를 RADIUS 서버로 구성해야 하며, 그렇지 않은 경우에는 RADIUS 서버를 사용할 필요가 없습니다. 스페이스의 모든 종류의 포털은 두 컨피그레이션에서 모두 지원됩니다.
스페이스에 RADIUS 서버가 없는 종속 포털
9800 컨트롤러의 웹 인증 매개변수 맵 컨피그레이션
1단계. Configuration(컨피그레이션) > Security(보안) > Web Auth(웹 인증)로 이동합니다. 새 매개변수 맵을 생성하려면+Add를 클릭합니다. 팝업되는 창에서 매개변수 맵 이름을 구성하고 유형으로 Consent를 선택합니다.
2단계. 이전 단계에서 구성한 매개변수 맵을 클릭하고 Advanced(고급) 탭으로 이동한 다음 Redirect for log-in URL(로그인 URL에 대한 리디렉션), Append for AP MAC Address(AP MAC 주소에 대한 추가), Append for Client MAC Address(클라이언트 MAC 주소에 대한 추가), Append for WLAN SSID and portal IPv4 Address(그림과 같이 WLAN SSID 및 포털 IPv4 주소에 대한 추가)를 입력합니다. Update & Apply(업데이트 및 적용)를 클릭합니다.
참고: 스플래시 페이지 URL과 IPv4 리디렉션 주소를 가져오려면 Spaces의 SSID 페이지에서 Configure Manually(수동으로 구성) 옵션을 클릭합니다. 이 그림은에서 볼 수 있듯이, What is the URL that Spaces portal is use at the end of the document에 나와 있습니다.
참고: Cisco Spaces 포털에서는 2개의 IP 주소로 확인할 수 있지만 9800 Controller에서는 하나의 IP 주소만 구성할 수 있습니다. 이러한 IP 주소 중 하나를 선택하고 매개변수 맵에서 포털 IPv4 주소로 구성합니다.
참고: 전역 웹 인증 매개변수 맵에 가상 IPv4 주소와 IPv6 주소가 모두 구성되어 있는지 확인하십시오. Virtual IPv6가 구성되지 않은 경우, 클라이언트는 구성된 Spaces 포털이 아닌 내부 포털로 리디렉션되는 경우가 있습니다. 따라서 가상 IP를 항상 구성해야 합니다. 192.0.2.1은 Virtual IPv4로, FE80:0:0:0:903A::11E4는 Virtual IPV6로 구성할 수 있습니다. 다른 IP를 사용해야 할 이유는 거의 없거나 전혀 없습니다.
CLI 구성:
Andressi-9800L(config)#parameter-map type webauth <map name>
Andressi-9800L(config-params-parameter-map)#type consent
Andressi-9800L(config-params-parameter-map)#timeout init-state sec 600
Andressi-9800L(config-params-parameter-map)#redirect for-login <splashpage URL>
Andressi-9800L(config-params-parameter-map)#redirect append ap-mac tag ap_mac
Andressi-9800L(config-params-parameter-map)#redirect append wlan-ssid tag wlan
Andressi-9800L(config-params-parameter-map)#redirect append client-mac tag client_mac
Andressi-9800L(config-params-parameter-map)#redirect portal ipv4 <IP Address>
Andressi-9800L(config-params-parameter-map)#logout-window-disabled
Andressi-9800L(config-params-parameter-map)#success-window-disabled
9800 컨트롤러에서 SSID를 생성합니다
1단계. Configuration(컨피그레이션) > Tags & Profiles(태그 및 프로필) > WLANs(WLAN)로 이동합니다. +추가를 클릭합니다. 프로파일 이름, SSID를 구성하고 WLAN을 활성화합니다. SSID 이름이 Create the SSID on Spaces(스페이스에 SSID 생성) 섹션의 3단계에서 구성한 이름과 동일한지 확인합니다.
2단계. Security(보안) > Layer2로 이동합니다. Layer 2 Security Mode(레이어 2 보안 모드)를 None(없음)으로 설정합니다. MAC 필터링이 비활성화되어 있는지 확인합니다.
3단계. Security(보안) > Layer3로 이동합니다. 웹 정책을 활성화하고 웹 인증 매개변수 맵을 구성합니다. Apply to Device(디바이스에 적용)를 클릭합니다.
9800 컨트롤러에서 정책 프로파일 구성
1단계. Configuration(컨피그레이션) > Tags & Profiles(태그 및 프로필) > Policy(정책)로 이동하여 새 정책 프로필을 생성하거나 기본 정책 프로필을 사용합니다. Access Policies(액세스 정책) 탭에서 클라이언트 VLAN을 구성하고 URL 필터를 추가합니다.
9800 컨트롤러에서 정책 태그 구성
1단계. Configuration > Tags & Profiles > Policy로 이동합니다. 새 정책 태그를 생성하거나 기본 정책 태그를 사용합니다. WLAN을 정책 태그의 정책 프로파일에 매핑합니다.
2단계. SSID를 브로드캐스트하려면 AP에 정책 태그를 적용합니다. Configuration(컨피그레이션) > Wireless(무선) > Access Points(액세스 포인트)로 이동합니다. 해당 AP를 선택하고 정책 태그를 추가합니다. 이렇게 하면 AP가 CAPWAP 터널을 다시 시작하고 9800 컨트롤러에 다시 조인합니다.
CLI 구성:
Andressi-9800L(config)#wlan <Profile name> <WLAN ID> <SSID Name>
Andressi-9800L(config-wlan)#no security wpa
Andressi-9800L(config-wlan)#no security wpa akm dot1x
Andressi-9800L(config-wlan)#no security wpa wpa2 ciphers aes
Andressi-9800L(config-wlan)#security web-auth
Andressi-9800L(config-wlan)#security web-auth parameter-map <map name>
Andressi-9800L(config-wlan)#no shutdown
Andressi-9800L(config)#wireless profile policy <policy-profile-name>
Andressi-9800L(config-wireless-policy)#vlan <id>
Andressi-9800L(config-wireless-policy)#urlfilter list pre-auth-filter <url-filter name>
Andressi-9800L(config-wireless-policy)#no shutdown
Andressi-9800L(config)#wireless tag policy <policy-tag-name>
Andressi-9800L(config-policy-tag)#wlan <Profile name> policy <policy-profile-name>
스페이스에 RADIUS 서버가 있는 종속 포털
참고: Spaces RADIUS 서버는 컨트롤러에서 오는 PAP 인증만 지원합니다.
9800 컨트롤러의 웹 인증 매개변수 맵 컨피그레이션
1단계. 웹 인증 매개변수 맵을 만듭니다. Configuration(컨피그레이션) > Security(보안) > Web Auth(웹 인증)로 이동합니다. Add(+추가)를 클릭하고 매개변수 맵 이름을 구성한 다음 유형으로 webauth를 선택합니다.
2단계. 1단계에서 구성한 매개변수 맵을 클릭합니다. Advanced(고급)를 클릭하고 Redirect for log-in(로그인을 위한 리디렉션), Append for AP MAC Address(AP MAC 주소에 대한 추가), Append for Client MAC Address(클라이언트 MAC 주소에 대한 추가), Append for WLAN SSID and portal IPv4 Address(WLAN SSID 및 포털 IPv4 주소에 대한 추가)를 입력합니다. Update & Apply(업데이트 및 적용)를 클릭합니다.
참고: 스플래시 페이지 URL 및 IPv4 리디렉션 주소를 가져오려면, Create the SSID on Spaces(스페이스에 SSID 생성) 섹션의 3단계에서 생성한 SSID에서 Configure Manually(수동으로 구성) 옵션을 클릭합니다. Creating the SSIDs in WLC Direct Connect(WLC 직접 연결에서 SSID 생성) 섹션의 Creating the Access Control List(액세스 제어 목록) 컨피그레이션 생성 섹션에서 각각을 클릭합니다.
참고: Cisco Spaces 포털은 2개의 IP 주소로 확인할 수 있지만 9800 컨트롤러에서는 1개의 IP 주소만 구성할 수 있습니다. 단, 매개변수 맵에서 구성할 IP 주소 중 하나를 포털 IPv4 주소로 선택합니다.
참고: 전역 웹 인증 매개변수 맵에 가상 IPv4 주소와 IPv6 주소가 모두 구성되어 있는지 확인하십시오. Virtual IPv6가 구성되지 않은 경우, 클라이언트는 구성된 Spaces 포털이 아닌 내부 포털로 리디렉션되는 경우가 있습니다. 따라서 가상 IP는 항상 192.0.2.1로 구성해야 하고 Virtual IPv4로 구성할 수 있으며 Virtual IPV6로 FE80:0:0:0:903A::11E4를 구성할 수 있습니다. 다른 IP를 사용해야 할 이유는 거의 없거나 전혀 없습니다.
CLI 구성:
Andressi-9800L(config)#parameter-map type webauth <map name>
Andressi-9800L(config-params-parameter-map)#type webauth
Andressi-9800L(config-params-parameter-map)#timeout init-state sec 600
Andressi-9800L(config-params-parameter-map)#redirect for-login <splashpage URL>
Andressi-9800L(config-params-parameter-map)#redirect append ap-mac tag ap_mac
Andressi-9800L(config-params-parameter-map)#redirect append wlan-ssid tag wlan
Andressi-9800L(config-params-parameter-map)#redirect append client-mac tag client_mac
Andressi-9800L(config-params-parameter-map)#redirect portal ipv4 <IP Address>
Andressi-9800L(config-params-parameter-map)#logout-window-disabled
Andressi-9800L(config-params-parameter-map)#success-window-disabled
9800 컨트롤러의 RADIUS 서버 컨피그레이션
1단계. RADIUS 서버를 구성합니다. Cisco Spaces는 사용자 인증을 위한 RADIUS 서버 역할을 하며 2개의 IP 주소에 응답할 수 있습니다. Configuration(컨피그레이션) > Security(보안) > AAA로 이동합니다. Add(추가)를 클릭하고 두 RADIUS 서버를 모두 구성합니다.
참고: 기본 및 보조 서버 모두에 대한 RADIUS IP 주소 및 비밀 키를 가져오려면 Create the SSID on Spaces(공간에 SSID 생성) 섹션의 3단계에서 생성한 SSID에서 Configure Manually(수동으로 구성) 옵션을 클릭하고 RADIUS Server Configuration(RADIUS 서버 컨피그레이션) 섹션으로 이동합니다.
2단계. RADIUS 서버 그룹을 구성하고 두 RADIUS 서버를 모두 추가합니다. Configuration(컨피그레이션) > Security(보안) > AAA > Servers/Groups(서버/그룹) > RADIUS > Server Groups(서버 그룹)로 이동하고 +add(추가)를 클릭하여 서버 그룹 이름, MAC-Delimiter as Hyphen(MAC 구분 기호), MAC-Filtering as MAC(MAC 필터링)을 구성하고 두 개의 RADIUS 서버를 할당합니다.
3단계. Authentication Method(인증 방법) 목록을 구성합니다. Configuration(컨피그레이션) > Security(보안) > AAA > AAA Method List(AAA 방법 목록) > Authentication(인증)으로 이동합니다. +추가를 클릭합니다. 메소드 목록 이름을 구성하고 유형으로 login을 선택하고 서버 그룹을 할당합니다.
4단계. Authorization Method(권한 부여 방법) 목록을 구성합니다. Configuration(컨피그레이션) > Security(보안) > AAA > AAA Method List(AAA 메서드 목록) > Authorization(권한 부여)으로 이동하고 +add(추가)를 클릭합니다. 메소드 목록 이름을 구성하고 유형으로 network를 선택하고 서버 그룹을 할당합니다.
9800 컨트롤러에서 SSID를 생성합니다
1단계. Configuration(컨피그레이션) > Tags & Profiles(태그 및 프로필) > WLANs(WLAN)로 이동하고 +Add(추가)를 클릭합니다. 프로파일 이름, SSID를 구성하고 WLAN을 활성화합니다. SSID 이름이 Create the SSID on Spaces(스페이스에 SSID 생성) 섹션의 3단계에서 구성한 이름과 동일한지 확인합니다.
2단계. Security(보안) > Layer2로 이동합니다. Layer 2 Security Mode(레이어 2 보안 모드)를 None(없음)으로 설정하고, MAC Filtering(MAC 필터링)을 활성화하고, Authorization List(권한 목록)를 추가합니다.
3단계. Security(보안) > Layer3로 이동합니다. 웹 정책을 활성화하고 웹 인증 매개변수 맵 및 인증 목록을 구성합니다. Enable On Mac Filter Failure(Mac 필터 실패 시 활성화) 및 Preauthentication ACL을 추가합니다. Apply to Device(디바이스에 적용)를 클릭합니다.
9800 컨트롤러에서 정책 프로파일 구성
1단계. Configuration(컨피그레이션) > Tags & Profiles(태그 및 프로필) > Policy(정책)로 이동하여 새 정책 프로필을 생성하거나 기본 정책 프로필을 사용합니다. Access Policies(액세스 정책) 탭에서 클라이언트 VLAN을 구성하고 URL 필터를 추가합니다.
2단계. Advanced(고급) 탭에서 AAA Override(AAA 재정의)를 활성화하고 선택에 따라 어카운팅 방법 목록을 구성합니다.
9800 컨트롤러에서 정책 태그 구성
1단계. Configuration > Tags & Profiles > Policy로 이동합니다. 새 정책 태그를 생성하거나 기본 정책 태그를 사용합니다. WLAN을 정책 태그의 정책 프로파일에 매핑합니다.
2단계. SSID를 브로드캐스트하려면 AP에 정책 태그를 적용합니다. Configuration(컨피그레이션) > Wireless(무선) > Access Points(액세스 포인트)로 이동하여 해당 AP를 선택하고 Policy Tag(정책 태그)를 추가합니다. 이렇게 하면 AP가 CAPWAP 터널을 다시 시작하고 9800 컨트롤러에 다시 조인합니다.
CLI 구성:
Andressi-9800L(config)#wlan <Profile name> <WLAN ID> <SSID Name>
Andressi-9800L(config-wlan)#ip access-group web <ACL Name>
Andressi-9800L(config-wlan)#no security wpa
Andressi-9800L(config-wlan)#no security wpa akm dot1x
Andressi-9800L(config-wlan)#no security wpa wpa2 ciphers aes
Andressi-9800L(config-wlan)#mac-filtering <authz name>
Andressi-9800L(config-wlan)#security web-auth
Andressi-9800L(config-wlan)#security web-auth authentication-list <auth name>
Andressi-9800L(config-wlan)#security web-auth on-macfilter-failure
Andressi-9800L(config-wlan)#security web-auth parameter-map <map name>
Andressi-9800L(config-wlan)#no shutdown
Andressi-9800L(config)#wireless profile policy <policy-profile-name>
Andressi-9800L(config-wireless-policy)#aaa-override
Andressi-9800L(config-wireless-policy)#accounting-list <acct name>
Andressi-9800L(config-wireless-policy)#vlan <id>
Andressi-9800L(config-wireless-policy)#urlfilter list pre-auth-filter <url-filter name>
Andressi-9800L(config-wireless-policy)#no shutdown
Andressi-9800L(config)#wireless tag policy <policy-tag-name>
Andressi-9800L(config-policy-tag)#wlan <Profile name> policy <policy-profile-name>
전역 매개변수 맵 구성
권장되지 않는 단계: HTTPS 리디렉션을 허용하려면 이 명령을 실행하되, 클라이언트 운영 체제에서 종속 포털 탐지를 수행하고 CPU 사용률이 더 높아지는 경우 클라이언트 HTTPS 트래픽에서 리디렉션할 필요가 없으며 항상 인증서 경고가 발생합니다. 매우 구체적인 활용 사례에 필요한 경우가 아니면 구성하지 않는 것이 좋습니다.
Andressi-9800L(config)#parameter-map type webauth global
Andressi-9800L(config-params-parameter-map)#intercept-https-enable
참고: Cisco Catalyst 9800 Series Wireless Controller에 설치된 가상 IP에 유효한 SSL 인증서가 있어야 합니다.
1단계. 확장명이 p12인 서명된 인증서 파일을 TFTP 서버에 복사하고 이 명령을 실행하여 인증서를 9800 컨트롤러로 전송하고 설치합니다.
Andressi-9800L(config)#crypto pki import <name> pkcs12 tftp://<tftp server ip>:/ password <certificate password>
2단계. 설치된 인증서를 웹 인증 매개변수 맵에 매핑하려면 다음 명령을 실행합니다.
Andressi-9800L(config)#parameter-map type webauth global
Andressi-9800L(config-params-parameter-map)#trustpoint <installed trustpool name>
스페이스에서 포털 만들기
1단계. Spaces(공간)의 대시보드에서 Captive Portals(종속 포털)를 클릭합니다.
2단계. Create New(새로 만들기)를 클릭하고 포털 이름을 입력한 다음 포털을 사용할 수 있는 위치를 선택합니다.
3단계. 인증 유형을 선택하고, 포털 홈 페이지에 데이터 캡처 및 사용자 계약을 표시할지, 사용자에게 메시지 수신 옵트인(Opt-in)이 허용되는지 선택합니다. 다음을 클릭합니다.
4단계. 데이터 캡처 요소를 구성합니다. 사용자의 데이터를 캡처하려면 데이터 캡처 사용 확인란을 선택하고 +필드 요소 추가를 클릭하여 원하는 필드를 추가합니다. 다음을 클릭합니다.
5단계. Enable Terms &Conditions(약관 활성화)를 선택하고 Save & Configure Portal(포털 저장 및 구성)을 클릭합니다.
6단계. 필요에 따라 포털을 수정합니다. Save(저장)를 클릭합니다.
스페이스에 종속 포털 규칙 구성
1단계. Spaces(공간)의 대시보드에서 Captive Portals(종속 포털)를 클릭합니다.
2단계. 종속 포털 메뉴를 열고 종속 포털 규칙을 클릭합니다.
3단계. + Create New Rule을 클릭합니다. 규칙 이름을 입력하고 이전에 구성한 SSID를 선택합니다.
4단계. 포털을 사용할 수 있는 위치를 선택합니다. LOCATIONS 섹션에서 + Add Locations를 클릭합니다. 위치 계층 구조에서 원하는 위치를 선택합니다.
5단계. 종속 포털의 작업을 선택합니다. 이 경우, 규칙이 적중되면 포털이 표시됩니다. 저장 및 게시를 클릭합니다.
스페이스에서 특정 정보 가져오기
스페이스에서 사용하는 IP 주소는 무엇입니까?
Spaces가 해당 지역의 포털에 어떤 IP 주소를 사용하는지 확인하려면 Cisco DNA Space 홈의 Captival Portal 페이지로 이동합니다. 왼쪽 메뉴에서 SSID를 클릭한 다음 SSID 아래에서 Configure manually를 클릭합니다. IP 주소는 ACL 예에서 언급됩니다. 이는 ACL 및 webauth 매개변수 맵에 사용할 포털의 IP 주소입니다. 스페이스는 제어 평면의 전체 NMSP/클라우드 연결에 다른 IP 주소를 사용합니다.
표시되는 팝업의 첫 번째 섹션에서 7단계는 ACL 정의에 언급된 IP 주소를 보여줍니다. 이러한 지침을 적용하고 ACL을 생성할 필요는 없으며 IP 주소만 기록해 두십시오. 해당 지역의 포털에서 사용하는 IP입니다
포털에서 스페이스 로그인이 사용하는 URL은 무엇입니까?
해당 지역의 포털에 대해 포털 URL Spaces에서 어떤 로그인을 사용하는지 확인하려면 Cisco DNA Space 홈의 Captival Portal 페이지로 이동합니다. 왼쪽 메뉴에서 SSID를 클릭한 다음 SSID 아래에서 Configure manually를 클릭합니다.
나타나는 팝업으로 아래로 스크롤하고 두 번째 섹션에서 7단계는 9800의 매개변수 맵에서 구성해야 하는 URL을 보여줍니다.
스페이스에 대한 RADIUS 서버 세부사항
사용해야 하는 RADIUS 서버 IP 주소와 공유 암호를 알아보려면 Cisco DNA Space 홈의 Captival Portal 페이지로 이동합니다. 왼쪽 메뉴에서 SSID를 클릭한 다음 SSID 아래에서 Configure manually를 클릭합니다.
표시되는 팝업에서 세 번째 섹션(RADIUS)에서 아래로 스크롤하고 7단계에서는 radius 인증을 위한 IP/포트 및 공유 암호를 제공합니다. 어카운팅은 선택 사항이며 12단계에서 다룹니다.
다음을 확인합니다.
SSID에 연결된 클라이언트의 상태를 확인하려면 Monitoring > Clients로 이동합니다. 디바이스의 MAC 주소를 클릭하고 Policy Manager State를 찾습니다.
문제 해결
일반적인 문제
1. 컨트롤러의 가상 인터페이스에 구성된 IP 주소가 없는 경우, 클라이언트는 매개변수 맵에 구성된 리디렉션 포털 대신 내부 포털로 리디렉션됩니다.
2. 클라이언트에서 스페이스의 포털로 리디렉션하는 동안 503 오류가 발생하는 경우 컨트롤러가 스페이스의 위치 계층 구조에 구성되었는지 확인합니다.
항상 추적
WLC 9800은 상시 추적 기능을 제공합니다. 이렇게 하면 모든 클라이언트 연결 관련 오류, 경고 및 알림 수준 메시지가 지속적으로 로깅되며, 사고 또는 장애 발생 후 상황에 대한 로그를 볼 수 있습니다.
참고: 생성되는 로그의 양에 따라 몇 시간에서 며칠로 돌아갈 수 있습니다.
9800 WLC가 기본적으로 수집한 추적을 보려면 SSH/텔넷을 통해 9800 WLC에 연결하고 다음 단계를 수행할 수 있습니다. 세션을 텍스트 파일에 로깅하고 있는지 확인합니다.
1단계. 문제가 발생했을 때까지의 시간에 로그를 추적할 수 있도록 컨트롤러 현재 시간을 확인합니다.
# show clock
2단계. 시스템 컨피그레이션에 따라 컨트롤러 버퍼 또는 외부 syslog에서 syslog를 수집합니다. 이렇게 하면 시스템 상태 및 오류가 있는 경우 이를 빠르게 확인할 수 있습니다.
# show logging
3단계. 디버그 조건이 활성화되었는지 확인합니다.
# show debugging
Cisco IOS XE Conditional Debug Configs:
Conditional Debug Global State: Stop
Cisco IOS XE Packet Tracing Configs:
Packet Infra debugs:
Ip Address Port
------------------------------------------------------|----------
참고: 조건을 나열하면, 활성화된 조건(mac 주소, IP 주소 등)이 발생하는 모든 프로세스의 디버그 레벨로 추적이 로깅되고 있음을 의미합니다. 이로 인해 로그의 볼륨이 증가합니다. 따라서 적극적으로 디버깅하지 않을 때는 모든 조건을 지우는 것이 좋습니다.
4단계. 테스트 중인 mac 주소가 3단계의 조건으로 나열되지 않은 경우, 특정 mac 주소에 대한 always-on 알림 레벨 추적을 수집합니다.
# show logging profile wireless filter { mac | ip } { <aaaa.bbbb.cccc> | <a.b.c.d> } to-file always-on-<FILENAME.txt>
세션의 콘텐츠를 표시하거나 파일을 외부 TFTP 서버에 복사할 수 있습니다.
# more bootflash:always-on-<FILENAME.txt>
or
# copy bootflash:always-on-<FILENAME.txt> tftp://a.b.c.d/path/always-on-<FILENAME.txt>
조건부 디버깅 및 무선 활성 추적
Always-on 추적을 통해 조사 중인 문제의 트리거를 확인할 수 있는 충분한 정보가 제공되지 않을 경우, 조건부 디버깅을 활성화하고 RA(Radio Active) 추적을 캡처할 수 있습니다. 그러면 지정된 조건(이 경우 클라이언트 mac 주소)과 상호 작용하는 모든 프로세스에 대한 디버그 레벨 추적이 제공됩니다. 조건부 디버깅을 활성화하려면 다음 단계를 수행합니다.
1단계. 활성화된 디버그 조건이 없는지 확인합니다.
# clear platform condition all
2단계. 모니터링할 무선 클라이언트 mac 주소에 대한 디버그 조건을 활성화합니다.
이 명령은 30분(1,800초) 동안 제공된 MAC 주소를 모니터링하기 시작합니다. 선택적으로 이 시간을 최대 2,085,978,494초까지 늘릴 수 있습니다.
# debug wireless mac <aaaa.bbbb.cccc> {monitor-time <seconds>}
참고: 한 번에 둘 이상의 클라이언트를 모니터링하려면 mac 주소당 debug wireless mac <aaaa.bbb.cccc> 명령을 실행합니다.
참고: 모든 것이 나중에 볼 수 있도록 내부적으로 버퍼링되므로 터미널 세션에서 클라이언트 활동의 출력이 표시되지 않습니다.
3단계. 모니터링할 문제나 동작을 재현합니다.
4단계. 문제가 기본값 또는 구성된 모니터 시간 전에 재현되는 경우 디버그를 중지합니다.
# no debug wireless mac <aaaa.bbbb.cccc>
모니터 시간이 경과하거나 디버그 무선이 중지되면 9800 WLC는 다음과 같은 이름의 로컬 파일을 생성합니다.
ra_trace_MAC_aaaabbbbcccc_HHMMSS.XXX_timezone_DayWeek_Month_Day_year.log
5단계. MAC 주소 활동의 파일을 수집합니다. ra trace.log를 외부 서버에 복사하거나 화면에 출력을 직접 표시할 수 있습니다.
RA 추적 파일의 이름을 확인합니다
# dir bootflash: | inc ra_trace
파일을 외부 서버에 복사:
# copy bootflash:ra_trace_MAC_aaaabbbbcccc_HHMMSS.XXX_timezone_DayWeek_Month_Day_year.log tftp://a.b.c.d/ra-FILENAME.txt
콘텐츠 표시:
# more bootflash:ra_trace_MAC_aaaabbbbcccc_HHMMSS.XXX_timezone_DayWeek_Month_Day_year.log
6단계. 근본 원인이 아직 명확하지 않은 경우 디버그 레벨 로그를 더 자세히 보여주는 내부 로그를 수집합니다. 이미 수집되어 내부적으로 저장된 디버그 로그만 더 자세히 살펴보기 때문에 클라이언트를 다시 디버깅할 필요는 없습니다.
# show logging profile wireless internal filter { mac | ip } { <aaaa.bbbb.cccc> | <a.b.c.d> } to-file ra-internal-<FILENAME>.txt
참고: 이 명령 출력은 모든 프로세스의 모든 로깅 레벨에 대한 추적을 반환하며 상당히 방대합니다. 이러한 추적을 구문 분석하는 데 도움이 되도록 Cisco TAC를 활성화하십시오.
ra-internal-FILENAME.txt를 외부 서버에 복사하거나 출력을 화면에 직접 표시할 수 있습니다.
파일을 외부 서버에 복사:
# copy bootflash:ra-internal-<FILENAME>.txt tftp://a.b.c.d/ra-internal-<FILENAME>.txt
콘텐츠 표시:
# more bootflash:ra-internal-<FILENAME>.txt
7단계. 디버그 조건을 제거합니다.
# clear platform condition all
참고: 트러블슈팅 세션 후에는 항상 디버그 조건을 제거해야 합니다.
성공한 시도의 예
RADIUS 서버가 없는 SSID에 연결하는 동안 연결/인증 프로세스 중에 각 단계를 성공적으로 식별하기 위한 RA_traces의 출력입니다.
802.11 연결/인증:
Association received. BSSID 10b3.d694.00ee, WLAN 9800DNASpaces, Slot 1 AP 10b3.d694.00e0, 2802AP-9800L
Received Dot11 association request. Processing started,SSID: 9800DNASpaces1, Policy profile: DNASpaces-PP, AP Name: 2802AP-9800L, Ap Mac Address: 10b3.d694.00e0 BSSID MAC0000.0000.0000 wlan ID: 1RSSI: 0, SNR: 32
Client state transition: S_CO_INIT -> S_CO_ASSOCIATING
dot11 send association response. Sending association response with resp_status_code: 0
dot11 send association response. Sending assoc response of length: 144 with resp_status_code: 0, DOT11_STATUS: DOT11_STATUS_SUCCESS
Association success. AID 1, Roaming = False, WGB = False, 11r = False, 11w = False
DOT11 state transition: S_DOT11_INIT -> S_DOT11_ASSOCIATED
Station Dot11 association is successful
IP 학습 프로세스:
IP-learn state transition: S_IPLEARN_INIT -> S_IPLEARN_IN_PROGRESS
Client IP learn successful. Method: ARP IP: 10.10.30.42
IP-learn state transition: S_IPLEARN_IN_PROGRESS -> S_IPLEARN_COMPLETE
Received ip learn response. method: IPLEARN_METHOD_AR
레이어 3 인증:
Triggered L3 authentication. status = 0x0, Success
Client state transition: S_CO_IP_LEARN_IN_PROGRESS -> S_CO_L3_AUTH_IN_PROGRESS
L3 Authentication initiated. LWA
Client auth-interface state transition: S_AUTHIF_L2_WEBAUTH_DONE -> S_AUTHIF_WEBAUTH_PENDING
Client auth-interface state transition: S_AUTHIF_L2_WEBAUTH_DONE -> S_AUTHIF_WEBAUTH_PENDING
[webauth-httpd] [17798]: (info): capwap_90000005[34e1.2d23.a668][10.10.30.42]GET rcvd when in INIT state
[webauth-httpd] [17798]: (info): capwap_90000005[34e1.2d23.a668][10.10.30.42]HTTP GET request
[webauth-httpd] [17798]: (info): capwap_90000005[34e1.2d23.a668][10.10.30.42]Parse GET, src [10.10.30.42] dst [10.107.4.52] url [http://www.msftconnecttest.com/connecttest.txt]
[webauth-httpd] [17798]: (info): capwap_90000005[34e1.2d23.a668][10.10.30.42]Retrieved user-agent = Microsoft NCSI
[webauth-httpd] [17798]: (info): capwap_90000005[34e1.2d23.a668][10.10.30.42]GET rcvd when in LOGIN state
[webauth-httpd] [17798]: (info): capwap_90000005[34e1.2d23.a668][10.10.30.42]HTTP GET request
[webauth-httpd] [17798]: (info): capwap_90000005[34e1.2d23.a668][10.10.30.42]Parse GET, src [10.10.30.42] dst [10.101.24.81] url [http://www.bbc.com/]
[webauth-httpd] [17798]: (info): capwap_90000005[34e1.2d23.a668][10.10.30.42]Retrieved user-agent = Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko
[webauth-httpd] [17798]: (info): capwap_90000005[34e1.2d23.a668][10.10.30.42]POST rcvd when in LOGIN state
레이어 3 인증에 성공했습니다. 클라이언트를 RUN 상태로 이동합니다.
[34e1.2d23.a668:capwap_90000005] Received User-Name 34E1.2D23.A668 for client 34e1.2d23.a668
L3 Authentication Successful. ACL:[]
Client auth-interface state transition: S_AUTHIF_WEBAUTH_PENDING -> S_AUTHIF_WEBAUTH_DONE
%CLIENT_ORCH_LOG-6-CLIENT_ADDED_TO_RUN_STATE: Username entry (34E1.2D23.A668) joined with ssid (9800DNASpaces) for device with MAC: 34e1.2d23.a668
Managed client RUN state notification: 34e1.2d23.a668
Client state transition: S_CO_L3_AUTH_IN_PROGRESS -> S_CO_RU