이 문서에서는 RADIUS 서버에서 액세스하는 데이터베이스에 대한 무선 사용자의 EAP(Extensible Authentication Protocol) 인증을 위한 Cisco IOS® 기반 액세스 포인트의 샘플 컨피그레이션을 제공합니다.
액세스 포인트가 EAP에서 수행하는 수동 역할로 인해(클라이언트에서 오는 무선 패킷을 인증 서버로 향하는 유선 패킷으로 브리징하거나 그 반대로), 이 컨피그레이션은 거의 모든 EAP 방법과 함께 사용됩니다. 이러한 방법에는 LEAP, PEAP(Protected EAP)-MS-CHAP(Challenge Handshake Authentication Protocol) 버전 2, PEAP-GTC(Generic Token Card), EAP-FAST(Flexible Authentication via Secure Tunneling), EAP-TLS(Transport Layer Security) 및 EAP-TTLS(Tunneled TLS)가 포함됩니다(이에 제한되지 않음). 이러한 각 EAP 방법에 대해 인증 서버를 적절하게 구성해야 합니다.
이 문서에서는 이 문서의 구성 예에서 Cisco Secure ACS인 RADIUS 서버 및 액세스 포인트(AP)를 구성하는 방법에 대해 설명합니다.
이 컨피그레이션을 시도하기 전에 다음 요구 사항을 충족해야 합니다.
Cisco IOS GUI 또는 CLI에 대해 잘 알고 있습니다.
EAP 인증의 개념에 대해 잘 알고 있습니다.
이 문서의 정보는 다음 소프트웨어 및 하드웨어 버전을 기반으로 합니다.
Cisco IOS를 실행하는 Cisco Aironet AP 제품
네트워크에서 하나의 가상 LAN(VLAN)만 가정
사용자 데이터베이스에 성공적으로 통합되는 RADIUS 인증 서버 제품입니다.
다음은 Cisco LEAP 및 EAP-FAST에 대해 지원되는 인증 서버입니다.
Cisco Secure ACS(Access Control Server)
Cisco CAR(Access Registrar)
펑크 스틸 벨티드 RADIUS
인터링크 메리트
다음은 Microsoft PEAP-MS-CHAP 버전 2 및 PEAP-GTC에 대해 지원되는 인증 서버입니다.
Microsoft IAS(인터넷 인증 서비스)
Cisco Secure ACS
펑크 스틸 벨티드 RADIUS
인터링크 메리트
Microsoft에서 인증할 수 있는 추가 인증 서버입니다.
참고: GTC 또는 One-Time Passwords에는 클라이언트 및 서버측, 하드웨어 또는 소프트웨어 토큰 생성기 모두에 추가 소프트웨어가 필요한 추가 서비스가 필요합니다.
EAP-TLS, EAP-TTLS 및 기타 EAP 방법에 대해 해당 제품에서 인증 서버가 지원되는 자세한 내용은 클라이언트 신청자 제조업체에 문의하십시오.
이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다. 이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다. 현재 네트워크가 작동 중인 경우, 모든 명령어의 잠재적인 영향을 미리 숙지하시기 바랍니다.
문서 규칙에 대한 자세한 내용은 Cisco 기술 팁 표기 규칙을 참조하십시오.
이 컨피그레이션에서는 IOS 기반 AP에서 EAP 인증을 구성하는 방법에 대해 설명합니다. 이 문서의 예에서 LEAP는 RADIUS 서버와의 EAP 인증 방법으로 사용됩니다.
참고: 이 섹션에 사용된 명령에 대한 자세한 내용을 보려면 명령 조회 도구(등록된 고객만 해당)를 사용하십시오.
대부분의 비밀번호 기반 인증 알고리즘과 마찬가지로 Cisco LEAP는 사전 공격에 취약합니다. 이는 Cisco LEAP의 새로운 공격 또는 취약점이 아닙니다. 강력한 비밀번호 정책을 생성하는 것이 사전 공격을 완화하는 가장 효과적인 방법입니다. 여기에는 강력한 비밀번호 사용 및 비밀번호의 정기적인 만료 등이 포함됩니다. 사전 공격과 사전 공격을 방지하는 방법에 대한 자세한 내용은 Cisco LEAP의 사전 공격을 참조하십시오.
이 문서에서는 GUI 및 CLI에 대해 이 컨피그레이션을 사용합니다.
AP의 IP 주소는 10.0.0.106입니다.
RADIUS 서버(ACS)의 IP 주소는 10.0.0.3입니다.
모든 EAP/802.1x 기반 인증 방법에서 네트워크 EAP와 EAP를 통한 개방 인증 간의 차이점에 대해 질문할 수 있습니다. 이러한 항목은 관리 및 연결 패킷의 헤더에 있는 Authentication Algorithm(인증 알고리즘) 필드의 값을 참조합니다. 대부분의 무선 클라이언트 제조업체는 이 필드를 값 0(Open authentication)으로 설정한 다음, 나중에 연결 프로세스에서 EAP 인증을 수행하려는 시도를 알립니다. Cisco는 네트워크 EAP 플래그와의 연결 시작부터 값을 다르게 설정합니다.
네트워크에 다음과 같은 클라이언트가 있는 경우:
Cisco 클라이언트 - Network-EAP를 사용합니다.
서드파티 클라이언트(CCX 호환 제품 포함) - Open with EAP를 사용합니다.
Cisco 및 서드파티 클라이언트의 조합 - Network-EAP(네트워크-EAP) 및 Open with EAP(EAP로 열기)를 모두 선택합니다.
EAP 컨피그레이션의 첫 번째 단계는 인증 서버를 정의하고 서버와의 관계를 설정하는 것입니다.
액세스 포인트 서버 관리자 탭(보안 > 서버 관리자 메뉴 항목 아래)에서 다음 단계를 완료합니다.
Server(서버) 필드에 인증 서버의 IP 주소를 입력합니다.
공유 암호 및 포트를 지정합니다.
Apply(적용)를 클릭하여 정의를 생성하고 드롭다운 목록을 채웁니다.
Default Server Priorities(기본 서버 우선순위) 아래의 EAP Authentication type Priority 1(EAP 인증 유형 우선순위 1) 필드를 서버 IP 주소로 설정합니다.
적용을 클릭합니다.
CLI에서 다음 명령을 실행할 수도 있습니다.
AP#configure terminal Enter configuration commands, one per line. End with CNTL/Z. AP(config)#aaa group server radius rad_eap AP(config-sg-radius)#server 10.0.0.3 auth-port 1645 acct-port 1646 AP(config-sg-radius)#exit AP(config)#aaa new-model AP(config)#aaa authentication login eap_methods group rad_eap AP(config)#radius-server host 10.0.0.3 auth-port 1645 acct-port 1646 key labap1200ip102 AP(config)#end AP#write memory
액세스 포인트는 인증 서버에서 AAA 클라이언트로 구성해야 합니다.
예를 들어, Cisco Secure ACS에서 액세스 포인트 이름, IP 주소, 공유 암호 및 인증 방법(RADIUS Cisco Aironet 또는 RADIUS Cisco IOS/PIX)이 정의된 Network Configuration(네트워크 컨피그레이션) 페이지에서 이러한 현상이 발생합니다. 다른 비 ACS 인증 서버에 대해서는 제조업체의 설명서를 참조하십시오.
인증 서버가 원하는 EAP 인증 방법을 수행하도록 구성되었는지 확인합니다. 예를 들어, LEAP를 수행하는 Cisco Secure ACS의 경우, System Configuration - Global Authentication Setup(시스템 컨피그레이션 - 전역 인증 설정) 페이지에서 LEAP 인증을 구성합니다. System Configuration(시스템 컨피그레이션)을 클릭한 다음 Global Authentication Setup(글로벌 인증 설정)을 클릭합니다. 기타 비 ACS 인증 서버 또는 기타 EAP 방법은 제조업체의 설명서를 참조하십시오.
이 그림에서는 PEAP, EAP-FAST, EAP-TLS, LEAP 및 EAP-MD5에 대해 구성된 Cisco Secure ACS를 보여 줍니다.
액세스 포인트가 클라이언트 인증 요청을 어디로 보낼지 알게 되면 해당 방법을 수락하도록 구성합니다.
참고: 이러한 지침은 WEP 기반 설치에 사용됩니다. WEP 대신 암호를 사용하는 WPA에 대해서는 WPA 구성 개요를 참조하십시오.
액세스 포인트 Encryption Manager 탭(Security > Encryption Manager 메뉴 항목 아래)에서 다음 단계를 완료합니다.
WEP 암호화를 사용하도록 지정합니다.
WEP가 필수임을 지정합니다.
키 크기가 128비트로 설정되었는지 확인합니다.
적용을 클릭합니다.
CLI에서 다음 명령을 실행할 수도 있습니다.
AP#configure terminal Enter configuration commands, one per line. End with CNTL/Z. AP(config)#interface dot11radio 0 AP(config-if)#encryption mode wep mandatory AP(config-if)#end AP#write memory
액세스 포인트 SSID 관리자 탭(보안 > SSID 관리자 메뉴 항목 아래)에서 다음 단계를 완료합니다.
원하는 SSID를 선택합니다.
"Authentication Methods Accepted(인증 방법 수락됨)"에서 Open(열기) 확인란을 선택하고 드롭다운 목록을 사용하여 With EAP(EAP 사용)를 선택합니다.
Cisco 클라이언트 카드가 있는 경우 Network-EAP(네트워크-EAP)라는 확인란을 선택합니다. Network EAP or Open Authentication with EAP(EAP로 네트워크 EAP 또는 개방 인증) 섹션의 설명을 참조하십시오.
적용을 클릭합니다.
CLI에서 다음 명령을 실행할 수도 있습니다.
AP#configure terminal Enter configuration commands, one per line. End with CNTL/Z. AP(config)#interface dot11radio 0 AP(config-if)#ssid labap1200 AP(config-if-ssid)#authentication open eap eap_methods AP(config-if-ssid)#authentication network-eap eap_methods AP(config-if-ssid)#end AP#write memory
기본 EAP 컨피그레이션으로 기본 기능을 확인하면 나중에 추가 기능 및 키 관리를 추가할 수 있습니다. 문제 해결을 더 쉽게 하기 위해 기능적 토대 위에 더 복잡한 기능을 배치하십시오.
이 섹션에서는 컨피그레이션이 제대로 작동하는지 확인하는 데 사용할 수 있는 정보를 제공합니다.
일부 show 명령은 출력 인터프리터 툴 에서 지원되는데(등록된 고객만), 이 툴을 사용하면 show 명령 출력의 분석 결과를 볼 수 있습니다.
show radius server-group all - AP에 구성된 모든 RADIUS 서버 그룹의 목록을 표시합니다.
컨피그레이션 문제를 해결하려면 다음 단계를 완료합니다.
클라이언트 측 유틸리티 또는 소프트웨어에서 동일하거나 유사한 매개 변수를 사용하여 새 프로파일 또는 연결을 만들어 클라이언트 구성에서 아무 것도 손상되지 않도록 합니다.
성공적인 인증을 방해하는 RF 문제의 가능성을 제거하기 위해 다음 단계에 표시된 것처럼 일시적으로 인증을 비활성화합니다.
CLI에서 no authentication open eap eap_methods, no authentication network-eap eap_methods 및 authentication open 명령을 사용합니다.
GUI에서 SSID Manager(SSID 관리자) 페이지에서 Network-EAP(네트워크-EAP)의 선택을 취소하고 Open(열기)을 선택한 다음 드롭다운 목록을 No Addition(추가 없음)으로 다시 설정합니다.
클라이언트가 성공적으로 연결되면 RF는 연결 문제에 기여하지 않습니다.
공유 암호 암호가 액세스 포인트와 인증 서버 간에 동기화되었는지 확인합니다. 그렇지 않은 경우 다음 오류 메시지를 받을 수 있습니다.
Invalid message authenticator in EAP request
CLI에서 radius-server host x.x.x.x auth-port x acct-port x key <shared_secret> 줄을 선택합니다.
GUI의 Server Manager(서버 관리자) 페이지에서 "Shared Secret(공유 암호)" 상자에 해당 서버의 공유 암호를 다시 입력합니다.
RADIUS 서버의 액세스 포인트에 대한 공유 암호 항목은 이전에 언급한 것과 동일한 공유 암호 암호를 포함해야 합니다.
RADIUS 서버에서 사용자 그룹을 제거합니다. RADIUS 서버에 의해 정의된 사용자 그룹과 기본 도메인의 사용자 그룹 간에 충돌이 발생할 수 있습니다. RADIUS 서버의 로그에서 실패한 시도 및 이러한 시도가 실패한 이유를 확인합니다.
일부 show 명령은 출력 인터프리터 툴 에서 지원되는데(등록된 고객만), 이 툴을 사용하면 show 명령 출력의 분석 결과를 볼 수 있습니다.
디버깅 인증은 EAP와 관련된 디버그의 출력을 수집하고 해석하는 방법에 대한 상당한 세부 정보를 제공합니다.
참고: debug 명령을 실행하기 전에 Debug 명령에 대한 중요 정보를 참조하십시오.
debug dot11 aaa authenticator state-machine - 클라이언트와 인증 서버 간 협상의 주요 분할(또는 상태)을 표시합니다. 다음은 성공적인 인증의 출력입니다.
*Mar 1 02:37:46.846: dot11_auth_dot1x_send_id_req_to_client: Sending identity request to 0040.96ac.dd05 *Mar 1 02:37:46.846: dot11_auth_dot1x_send_id_req_to_client: 0040.96ac.dd05 timer started for 30 seconds *Mar 1 02:37:46.930: dot11_auth_dot1x_run_rfsm: Executing Action(CLIENT_WAIT,EAP_START) for 0040.96ac.dd05 *Mar 1 02:37:46.931: dot11_auth_dot1x_send_id_req_to_client: Sending identity request to 0040.96ac.dd05 (client) *Mar 1 02:37:46.931: dot11_auth_dot1x_send_id_req_to_client: Client 0040.96ac.dd05 timer started for 30 seconds *Mar 1 02:37:46.938: dot11_auth_dot1x_run_rfsm: Executing Action(CLIENT_WAIT,CLIENT_REPLY) for 0040.96ac.dd05 *Mar 1 02:37:46.938: dot11_auth_dot1x_send_response_to_server: Sending client 0040.96ac.dd05 data (User Name) to server *Mar 1 02:37:46.938: dot11_auth_dot1x_send_response_to_server: Started timer server_timeout 60 seconds *Mar 1 02:37:47.017: dot11_auth_dot1x_run_rfsm: Executing Action(SERVER_WAIT,SERVER_REPLY) for 0040.96ac.dd05 *Mar 1 02:37:47.017: dot11_auth_dot1x_send_response_to_client: Forwarding server message(Challenge) to client 0040.96ac.dd05 *Mar 1 02:37:47.018: dot11_auth_dot1x_send_response_to_client: Started timer client_timeout 20 seconds *Mar 1 02:37:47.025: dot11_auth_dot1x_run_rfsm: Executing Action(CLIENT_WAIT,CL IENT_REPLY) for 0040.96ac.dd05 *Mar 1 02:37:47.025: dot11_auth_dot1x_send_response_to_server: Sending client 0040.96ac.dd05 data(User Credentials) to server -------------------Lines Omitted for simplicity------------------- *Mar 1 02:37:47.030: dot11_auth_dot1x_send_response_to_client: Started timer client_timeout 20 seconds *Mar 1 02:37:47.041: dot11_auth_dot1x_run_rfsm: Executing Action (SERVER_WAIT,SE RVER_PASS) for 0040.96ac.dd05 *Mar 1 02:37:47.041: dot11_auth_dot1x_send_response_to_client: Forwarding server message(Pass Message) to client 0040.96ac.dd05 *Mar 1 02:37:47.042: dot11_auth_dot1x_send_response_to_client: Started timer client_timeout 30 seconds *Mar 1 02:37:47.043: %DOT11-6-ASSOC: Interface Dot11Radio0, Station TACWEB 0040 .96ac.dd05 Associated KEY_MGMT[NONE] (Client stays associated to the access point)
참고: 12.2(15)JA 이전의 Cisco IOS Software 릴리스에서 이 debug 명령의 구문은 debug dot11 aaa dot1x state-machine입니다.
debug dot11 aaa authenticator process - 클라이언트와 인증 서버 간 협상의 개별 대화 상자를 표시합니다.
참고: 12.2(15)JA 이전의 Cisco IOS Software 릴리스에서 이 debug 명령의 구문은 debug dot11 aaa dot1x process입니다.
debug radius authentication(디버그 radius 인증) - 서버와 클라이언트 간의 RADIUS 협상을 표시합니다. 둘 다 AP에 의해 브리지됩니다. 실패한 인증 결과에 대한 출력입니다.
*Mar 1 02:34:55.086: RADIUS/ENCODE(00000031):Orig. component type = DOT11 *Mar 1 02:34:55.086: RADIUS: AAA Unsupported Attr: ssid [264] 5 *Mar 1 02:34:55.086: RADIUS: 73 73 69 [ssi] *Mar 1 02:34:55.086: RADIUS: AAA Unsupported Attr: interface [157] 3 *Mar 1 02:34:55.087: RADIUS: 32 [2] *Mar 1 02:34:55.087: RADIUS(00000031): Config NAS IP: 10.0.0.106 *Mar 1 02:34:55.087: RADIUS/ENCODE(00000031): acct_session_id: 47 *Mar 1 02:34:55.087: RADIUS(00000031): Config NAS IP: 10.0.0.106 *Mar 1 02:34:55.087: RADIUS(00000031): sending *Mar 1 02:34:55.087: RADIUS(00000031): Send Access-Request to 10.0.0.3 :164 5 id 1645/61, len 130 *Mar 1 02:34:55.088: RADIUS: authenticator 0F 6D B9 57 4B A3 F2 0E - 56 77 A4 7E D3 C2 26 EB *Mar 1 02:34:55.088: RADIUS: User-Name [1] 8 "wirels" *Mar 1 02:34:55.088: RADIUS: Framed-MTU [12] 6 1400 *Mar 1 02:34:55.088: RADIUS: Called-Station-Id [30] 16 "0019.a956.55c0" *Mar 1 02:34:55.088: RADIUS: Calling-Station-Id [31] 16 "0040.96ac.dd05" *Mar 1 02:34:55.088: RADIUS: Service-Type [6] 6 Login [1] *Mar 1 02:34:55.088: RADIUS: Message-Authenticato[80] 18 *Mar 1 02:34:55.089: RADIUS: 73 8C 59 C4 98 51 53 9F 58 4D 1D EB A5 4A AB 88 [s?Y??QS?XM???J??] *Mar 1 02:34:55.089: RADIUS: EAP-Message [79] 13 *Mar 1 02:34:55.089: RADIUS: NAS-Port-Id [87] 5 "299" *Mar 1 02:34:55.090: RADIUS: NAS-IP-Address [4] 6 10.0.0.106 *Mar 1 02:34:55.090: RADIUS: Nas-Identifier [32] 4 "ap" *Mar 1 02:34:55.093: RADIUS: Received from id 1645/61 10.0.0.3 :1645, Access-Challenge, len 79 *Mar 1 02:34:55.093: RADIUS: authenticator 72 FD C6 9F A1 53 8F D2 - 84 87 49 9B B4 77 B8 973 ---------------------------Lines Omitted----------------------------------- *Mar 1 02:34:55.117: RADIUS(00000031): Config NAS IP: 10.0.0.106 *Mar 1 02:34:55.118: RADIUS/ENCODE(00000031): acct_session_id: 47 *Mar 1 02:34:55.118: RADIUS(00000031): Config NAS IP: 10.0.0.106 *Mar 1 02:34:55.118: RADIUS(00000031): sending *Mar 1 02:34:55.118: RADIUS(00000031): Send Access-Request to 10.0.0.3 :164 5 id 1645/62, len 168 *Mar 1 02:34:55.118: RADIUS: authenticator 49 AE 42 83 C0 E9 9A A7 - 07 0F 4E 7C F4 C7 1F 24 *Mar 1 02:34:55.118: RADIUS: User-Name [1] 8 "wirels" *Mar 1 02:34:55.119: RADIUS: Framed-MTU [12] 6 1400 ----------------------------------Lines Omitted----------------------- *Mar 1 02:34:55.124: RADIUS: Received from id 1645/62 10.0.0.3 :1645, Access-Reject, len 56 *Mar 1 02:34:55.124: RADIUS: authenticator A6 13 99 32 2A 9D A6 25 - AD 01 26 11 9A F6 01 37 *Mar 1 02:34:55.125: RADIUS: EAP-Message [79] 6 *Mar 1 02:34:55.125: RADIUS: 04 15 00 04 [????] *Mar 1 02:34:55.125: RADIUS: Reply-Message [18] 12 *Mar 1 02:34:55.125: RADIUS: 52 65 6A 65 63 74 65 64 0A 0D [Rejected??] *Mar 1 02:34:55.125: RADIUS: Message-Authenticato[80] 18 *Mar 1 02:34:55.126: RADIUS(00000031): Received from id 1645/62 *Mar 1 02:34:55.126: RADIUS/DECODE: EAP-Message fragments, 4, total 4 bytes *Mar 1 02:34:55.126: RADIUS/DECODE: Reply-Message fragments, 10, total 10 bytes *Mar 1 02:34:55.127: %DOT11-7-AUTH_FAILED: Station 0040.96ac.dd05 Authentication failed
debug aaa authentication(aaa 인증 디버그) - 클라이언트 디바이스와 인증 서버 간의 인증을 위한 AAA 협상을 표시합니다.
개정 | 게시 날짜 | 의견 |
---|---|---|
1.0 |
19-Oct-2009 |
최초 릴리스 |