이 문서에서는 표준 EAP(Extensible Authentication Protocol) 인증과 함께 원격 VPN 액세스가 IKEv2(Internet Key Exchange Protocol)를 사용하도록 허용하는 Cisco ASA(Adaptive Security Appliance) 버전 9.3.2 이상에 대한 컨피그레이션 예를 제공합니다.이렇게 하면 네이티브 Microsoft Windows 7 클라이언트(및 기타 표준 기반 IKEv2)가 IKEv2 및 EAP 인증을 사용하여 ASA에 연결할 수 있습니다.
다음 주제에 대한 지식을 보유하고 있으면 유용합니다.
이 문서의 정보는 다음 소프트웨어 및 하드웨어 버전을 기반으로 합니다.
네이티브 Windows IKEv2 클라이언트는 스플릿 터널을 지원하지 않습니다(Windows 7 클라이언트에서 수락할 수 있는 CONF REPLY 특성이 없음). 따라서 Microsoft 클라이언트에서 사용할 수 있는 유일한 정책은 모든 트래픽(0/0 트래픽 선택기)을 터널링하는 것입니다. 특정 스플릿 터널 정책이 필요한 경우 AnyConnect를 사용해야 합니다.
AnyConnect는 AAA 서버(PEAP, 전송 계층 보안)에서 종료되는 표준화된 EAP 방법을 지원하지 않습니다. AAA 서버에서 EAP 세션을 종료해야 하는 경우 Microsoft 클라이언트를 사용할 수 있습니다.
ASA는 인증서로 인증하도록 구성됩니다(클라이언트는 해당 인증서를 신뢰해야 함). Windows 7 클라이언트는 EAP(EAP-PEAP)로 인증하도록 구성됩니다.
ASA는 클라이언트에서 IKEv2 세션을 종료하는 VPN 게이트웨이 역할을 합니다.ISE는 클라이언트에서 EAP 세션을 종료하는 AAA 서버 역할을 합니다.EAP 패킷은 클라이언트와 ASA(IKEv2) 간 트래픽에 대해 IKE_AUTH 패킷으로 캡슐화된 다음 ASA와 ISE 간의 인증 트래픽을 위해 RADIUS 패킷에서 캡슐화됩니다.
ASA용 인증서를 생성하기 위해 Microsoft CA(Certificate Authority)가 사용되었습니다.Windows 7 기본 클라이언트에서 수락하기 위한 인증서 요구 사항은 다음과 같습니다.
Microsoft 클라이언트에 대한 자세한 내용은 IKEv2 VPN 연결 문제 해결을 참조하십시오.
ASA에서 인증서 서명 요청을 생성하기 위해 이 컨피그레이션이 사용되었습니다.
hostname ASAv
domain-name example.com
crypto ca trustpoint TP
enrollment terminal
crypto ca authenticate TP
crypto ca enroll TP
관리 > 네트워크 장치를 선택합니다.ASA에서 사용할 사전 공유 비밀번호를 설정합니다.
관리 > ID > 사용자를 선택합니다.필요에 따라 사용자 이름을 생성합니다.
ISE가 EAP-PEAP(Protected Extensible Authentication Protocol)를 사용하여 엔드포인트를 인증하기 위해 다른 모든 설정은 기본적으로 활성화되어 있습니다.
원격 액세스에 대한 컨피그레이션은 IKEv1 및 IKEv2와 유사합니다.
aaa-server ISE2 protocol radius
aaa-server ISE2 (inside) host 10.62.97.21
key cisco
group-policy AllProtocols internal
group-policy AllProtocols attributes
vpn-tunnel-protocol ikev1 ikev2 ssl-client ssl-clientless
ip local pool POOL 192.168.1.10-192.168.1.20 mask 255.255.255.0
crypto ipsec ikev2 ipsec-proposal ipsec-proposal
protocol esp encryption aes-256 aes-192 aes
protocol esp integrity sha-256 sha-1 md5
crypto dynamic-map DYNMAP 10 set ikev2 ipsec-proposal ipsec-proposal
crypto map MAP 10 ipsec-isakmp dynamic DYNMAP
crypto map MAP interface outside
crypto ikev2 policy 10
encryption 3des
integrity sha
group 2
prf sha
lifetime seconds 86400
Windows 7은 IKE_AUTH 패킷에서 IKE-ID 유형 주소를 전송하므로 DefaultRAGroup을 사용하여 연결이 올바른 터널 그룹에 있는지 확인해야 합니다. ASA는 인증서(로컬 인증)를 사용하여 인증하고 클라이언트가 EAP(원격 인증)를 사용하도록 예상합니다. 또한 ASA는 클라이언트가 EAP ID 응답(쿼리 ID)으로 응답하도록 EAP ID 요청을 특별히 보내야 합니다.
tunnel-group DefaultRAGroup general-attributes
address-pool POOL
authentication-server-group ISE
default-group-policy AllProtocols
tunnel-group DefaultRAGroup ipsec-attributes
ikev2 remote-authentication eap query-identity
ikev2 local-authentication certificate TP
마지막으로 IKEv2를 활성화하고 올바른 인증서를 사용해야 합니다.
crypto ikev2 enable outside client-services port 443
crypto ikev2 remote-access trustpoint TP
ASA에서 제공하는 인증서를 신뢰하려면 Windows 클라이언트가 해당 CA를 신뢰해야 합니다.해당 CA 인증서는 사용자 저장소가 아니라 컴퓨터 인증서 저장소에 추가해야 합니다. Windows 클라이언트는 컴퓨터 저장소를 사용하여 IKEv2 인증서를 검증합니다.
CA를 추가하려면 MMC > 스냅인 추가 또는 제거 > 인증서를 선택합니다.
컴퓨터 계정 라디오 버튼을 클릭합니다.
CA를 신뢰할 수 있는 루트 인증 기관으로 가져옵니다.
Windows 클라이언트가 ASA에서 제공한 인증서를 검증할 수 없는 경우 다음을 보고합니다.
13801: IKE authentication credentials are unacceptable
네트워크 및 공유 센터에서 VPN 연결을 구성하려면 VPN 연결을 생성하려면 Connect to a workplace(작업 공간에 연결)를 선택합니다.
Use my Internet connection (VPN)(내 인터넷 연결 사용(VPN)을 선택합니다.
ASA FQDN으로 주소를 구성합니다.DNS(Domain Name Server)에서 올바르게 확인했는지 확인합니다.
필요한 경우 Protected EAP Properties(보호된 EAP 속성) 창에서 속성(예: 인증서 검증)을 조정합니다.
이 섹션을 사용하여 컨피그레이션이 제대로 작동하는지 확인합니다.
Output Interpreter 도구(등록된 고객만 해당)는 특정 show 명령을 지원합니다.show 명령 출력의 분석을 보려면 [출력 인터프리터 도구]를 사용합니다.
연결할 때 자격 증명을 입력합니다.
인증에 성공하면 IKEv2 컨피그레이션이 적용됩니다.
세션이 UP입니다.
라우팅 테이블이 낮은 메트릭으로 새 인터페이스를 사용하여 기본 경로로 업데이트되었습니다.
C:\Users\admin>route print
===========================================================================
Interface List
41...........................IKEv2 connection to ASA
11...08 00 27 d2 cb 54 ......Karta Intel(R) PRO/1000 MT Desktop Adapter
1...........................Software Loopback Interface 1
15...00 00 00 00 00 00 00 e0 Karta Microsoft ISATAP
12...00 00 00 00 00 00 00 e0 Teredo Tunneling Pseudo-Interface
22...00 00 00 00 00 00 00 e0 Karta Microsoft ISATAP #4
===========================================================================
IPv4 Route Table
===========================================================================
Active Routes:
Network Destination Netmask Gateway Interface Metric
0.0.0.0 0.0.0.0 192.168.10.1 192.168.10.68 4491
0.0.0.0 0.0.0.0 On-link 192.168.1.10 11
10.62.71.177 255.255.255.255 192.168.10.1 192.168.10.68 4236
127.0.0.0 255.0.0.0 On-link 127.0.0.1 4531
127.0.0.1 255.255.255.255 On-link 127.0.0.1 4531
127.255.255.255 255.255.255.255 On-link 127.0.0.1 4531
192.168.1.10 255.255.255.255 On-link 192.168.1.10 266
192.168.10.0 255.255.255.0 On-link 192.168.10.68 4491
192.168.10.68 255.255.255.255 On-link 192.168.10.68 4491
192.168.10.255 255.255.255.255 On-link 192.168.10.68 4491
224.0.0.0 240.0.0.0 On-link 127.0.0.1 4531
224.0.0.0 240.0.0.0 On-link 192.168.10.68 4493
224.0.0.0 240.0.0.0 On-link 192.168.1.10 11
255.255.255.255 255.255.255.255 On-link 127.0.0.1 4531
255.255.255.255 255.255.255.255 On-link 192.168.10.68 4491
255.255.255.255 255.255.255.255 On-link 192.168.1.10 266
===========================================================================
성공적인 인증 후 ASA는 다음을 보고합니다.
ASAv(config)# show vpn-sessiondb detail ra-ikev2-ipsec
Session Type: Generic Remote-Access IKEv2 IPsec Detailed
Username : cisco Index : 13
Assigned IP : 192.168.1.10 Public IP : 10.147.24.166
Protocol : IKEv2 IPsecOverNatT
License : AnyConnect Premium
Encryption : IKEv2: (1)3DES IPsecOverNatT: (1)AES256
Hashing : IKEv2: (1)SHA1 IPsecOverNatT: (1)SHA1
Bytes Tx : 0 Bytes Rx : 7775
Pkts Tx : 0 Pkts Rx : 94
Pkts Tx Drop : 0 Pkts Rx Drop : 0
Group Policy : AllProtocols Tunnel Group : DefaultRAGroup
Login Time : 17:31:34 UTC Tue Nov 18 2014
Duration : 0h:00m:50s
Inactivity : 0h:00m:00s
VLAN Mapping : N/A VLAN : none
Audt Sess ID : c0a801010000d000546b8276
Security Grp : none
IKEv2 Tunnels: 1
IPsecOverNatT Tunnels: 1
IKEv2:
Tunnel ID : 13.1
UDP Src Port : 4500 UDP Dst Port : 4500
Rem Auth Mode: EAP
Loc Auth Mode: rsaCertificate
Encryption : 3DES Hashing : SHA1
Rekey Int (T): 86400 Seconds Rekey Left(T): 86351 Seconds
PRF : SHA1 D/H Group : 2
Filter Name :
IPsecOverNatT:
Tunnel ID : 13.2
Local Addr : 0.0.0.0/0.0.0.0/0/0
Remote Addr : 192.168.1.10/255.255.255.255/0/0
Encryption : AES256 Hashing : SHA1
Encapsulation: Tunnel
Rekey Int (T): 28800 Seconds Rekey Left(T): 28750 Seconds
Idle Time Out: 30 Minutes Idle TO Left : 29 Minutes
Bytes Tx : 0 Bytes Rx : 7834
Pkts Tx : 0 Pkts Rx : 95
ISE 로그는 기본 인증 및 권한 부여 규칙을 통한 성공적인 인증을 나타냅니다.
세부 정보는 PEAP 방법을 나타냅니다.
가장 중요한 디버그에는 다음이 포함됩니다.
ASAv# debug crypto ikev2 protocol 32
<most debugs omitted for clarity....
ASA에서 받은 IKE_SA_INIT 패킷(DH(Diffie-Hellman)에 대한 IKEv2 제안서와 키 교환 포함):
IKEv2-PROTO-2: Received Packet [From 10.147.24.166:500/To 10.62.71.177:500/VRF i0:f0]
Initiator SPI : 7E5B69A028355701 - Responder SPI : 0000000000000000 Message id: 0
IKEv2 IKE_SA_INIT Exchange REQUESTIKEv2-PROTO-3: Next payload: SA,
version: 2.0 Exchange type: IKE_SA_INIT, flags: INITIATOR Message id: 0, length: 528
Payload contents:
SA Next payload: KE, reserved: 0x0, length: 256
last proposal: 0x2, reserved: 0x0, length: 40
Proposal: 1, Protocol id: IKE, SPI size: 0, #trans: 4 last transform: 0x3,
reserved: 0x0: length: 8
.....
개시자에 대한 IKE_SA_INIT 응답(IKEv2 제안서, DH에 대한 키 교환 및 인증서 요청 포함):
IKEv2-PROTO-2: (30): Generating IKE_SA_INIT message
IKEv2-PROTO-2: (30): IKE Proposal: 1, SPI size: 0 (initial negotiation),
Num. transforms: 4
(30): 3DES(30): SHA1(30): SHA96(30): DH_GROUP_1024_MODP/Group
2IKEv2-PROTO-5:
Construct Vendor Specific Payload: DELETE-REASONIKEv2-PROTO-5: Construct Vendor
Specific Payload: (CUSTOM)IKEv2-PROTO-5: Construct Notify Payload:
NAT_DETECTION_SOURCE_IPIKEv2-PROTO-5: Construct Notify Payload:
NAT_DETECTION_DESTINATION_IPIKEv2-PROTO-5: Construct Vendor Specific Payload:
FRAGMENTATION(30):
IKEv2-PROTO-2: (30): Sending Packet [To 10.147.24.166:500/From
10.62.71.177:500/VRF i0:f0]
IKE-ID, 인증서 요청, 제안된 변형 집합, 요청된 컨피그레이션 및 트래픽 선택기가 있는 클라이언트의 IKE_AUTH:
IKEv2-PROTO-2: (30): Received Packet [From 10.147.24.166:4500/To 10.62.71.177:500/VRF
i0:f0]
(30): Initiator SPI : 7E5B69A028355701 - Responder SPI : 1B1A94C7A7739855 Message id: 1
(30): IKEv2 IKE_AUTH Exchange REQUESTIKEv2-PROTO-3: (30): Next payload: ENCR,
version: 2.0 (30): Exchange type: IKE_AUTH, flags: INITIATOR (30): Message id: 1,
length: 948(30):
EAP ID 요청을 포함하는 ASA의 IKE_AUTH 응답(EAP 확장의 첫 번째 패킷). 해당 패킷에는 인증서도 포함됩니다(ASA에 올바른 인증서가 없으면 오류가 발생함).
IKEv2-PROTO-2: (30): Generating EAP request
IKEv2-PROTO-2: (30): Sending Packet [To 10.147.24.166:4500/From 10.62.71.177:4500/VRF
i0:f0]
ASA에서 받은 EAP 응답(길이 5, 페이로드:cisco):
(30): REAL Decrypted packet:(30): Data: 14 bytes
(30): EAP(30): Next payload: NONE, reserved: 0x0, length: 14
(30): Code: response: id: 36, length: 10
(30): Type: identity
(30): EAP data: 5 bytes
그런 다음 여러 패킷이 EAP-PEAP의 일부로 교환됩니다.마지막으로 ASA에서 EAP 성공을 수신하고 신청자에게 전달됩니다.
Payload contents:
(30): EAP(30): Next payload: NONE, reserved: 0x0, length: 8
(30): Code: success: id: 76, length: 4
피어 인증 성공:
IKEv2-PROTO-2: (30): Verification of peer's authenctication data PASSED
VPN 세션이 올바르게 완료되었습니다.
EAP ID 요청은 ASA에서 보내는 IKE_AUTH의 "Extensible Authentication"으로 캡슐화됩니다.ID 요청과 함께 IKE_ID 및 인증서가 전송됩니다.
모든 후속 EAP 패킷은 IKE_AUTH에 캡슐화됩니다.서 플리 컨 트가 방법 (EAP-PEAP) 확인 한 후 인증에 사용 된 MSCHAPv2 세션을 보호 하는 SSL (Secure Sockets Layer) 터널을 만들기 시작 합니다.
여러 패킷이 교환된 후 ISE는 성공을 확인합니다.
IKEv2 세션은 ASA에 의해 완료되고, 최종 컨피그레이션(할당된 IP 주소와 같은 값으로 컨피그레이션 응답), 변형 집합 및 트래픽 선택기가 VPN 클라이언트에 푸시됩니다.
현재 이 컨피그레이션에 사용할 수 있는 특정 문제 해결 정보가 없습니다.