목차

소개

사전 요구 사항

요구 사항

사용되는 구성 요소

구성

구성

1. ISE에 네트워크 디바이스를 추가하고 DTLS 프로토콜을 활성화합니다.

2. DTLS 포트 및 유휴 시간 제한을 구성합니다.

3. ISE 신뢰 저장소에서 DTLS RADIUS 인증서의 발급자를 내보냅니다.

4. 신뢰 지점을 구성하고 인증자에게 인증서를 가져옵니다.

5. 스위치의 인증서를 내보냅니다.

6. ISE 트러스트 저장소로 스위치 인증서를 가져옵니다.

7. 스위치에서 RADIUS를 구성합니다.

8. ISE에서 정책을 구성합니다.

다음을 확인합니다.

문제 해결

1. ISE는 어떤 요청도 받지 않습니다.

2. DTLS 핸드셰이크가 실패합니다.

소개

이 문서에서는 DTLS(Datagram Transport Layer Security Protocol)를 통한 RADIUS의 컨피그레이션 및 트러블슈팅에 대해 설명합니다.DTLS는 보안 터널을 통해 전송되는 RADIUS에 대한 암호화 서비스를 제공합니다.

사전 요구 사항

요구 사항

다음 주제에 대한 지식을 보유하고 있으면 유용합니다.

- Cisco ISE(Identity Services Engine)

- RADIUS 프로토콜

- Cisco IOS

사용되는 구성 요소

이 문서의 정보는 다음 소프트웨어 및 하드웨어 버전을 기반으로 합니다.

- Cisco Identity Services Engine 2.2

- Catalyst 3650 with IOS 16.6.1

이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다.이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다.현재 네트워크가 작동 중인 경우, 모든 명령어의 잠재적인 영향을 미리 숙지하시기 바랍니다.

구성

구성

1. ISE에 네트워크 디바이스를 추가하고 DTLS 프로토콜을 활성화합니다.

Administration(관리) > Network Resources(네트워크 리소스) > Network Devices(네트워크 디바이스)로 이동합니다.Add(추가)를 클릭하고 필수 필드 이상을 입력합니다.

- Name(이름) - 디바이스의 이름이 추가됩니다.

- IP Address - 인증자가 ISE에 연결하는 데 사용하는 IP 주소.장치 범위를 구성할 수 있습니다.이렇게 하려면 적절한 마스크(32보다 작음)를 지정합니다.

- 디바이스 프로필 - 디바이스의 일반 설정입니다.어떤 프로토콜이 처리되는지, 자세한 CoA(Change of Authorization) 설정 및 Radius 특성 컨피그레이션을 지정할 수 있습니다.자세한 내용은 Administration(관리) > Network Resources(네트워크 리소스) > Network Device Profiles(네트워크 디바이스 프로필)로 이동합니다.

- Network Device Group(네트워크 디바이스 그룹) - 디바이스 유형을 설정하고 기능 및 디바이스 위치를 IPSec으로 설정합니다.이 설정은 필수 설정이 아닙니다.사용자 지정 값을 선택하지 않으면 기본 설정이 사용됩니다.

RADIUS Authentication Settings(RADIUS 인증 설정) 확인란을 선택하고 RADIUS DTLS Settings(RADIUS DTLS 설정) 아래에서 DTLS Required(DTLS 필요) 확인란을 선택합니다.이렇게 하면 DTLS 보안 터널을 통해서만 인증자와 RADIUS 통신이 가능합니다.Shared Secret 텍스트 상자가 회색으로 표시됩니다.RADIUS DTLS의 경우 이 값은 고정되어 있고 인증자 측에서 동일한 문자열이 구성됩니다.

2. DTLS 포트 및 유휴 시간 제한을 구성합니다.

Administration(관리) > System(시스템) > Settings(설정) > Protocols(프로토콜) > RADIUS > RADIUS DTLS에서 DTLS 통신 및 유휴 시간 제한에 사용되는 포트를 구성할 수 있습니다.

DTLS 포트는 RADIUS 포트와 다릅니다.기본적으로 RADIUS는 1645, 1646 및 1812, 1813 쌍을 사용합니다.기본적으로 인증, 권한 부여, 계정 관리 및 CoA에 대한 DTLS는 포트 2083을 사용합니다.Idle Timeout(유휴 시간 제한)은 ISE 및 인증자가 터널을 통과하는 실제 통신 없이 터널을 유지하는 기간을 지정합니다.이 시간 제한은 초 단위로 측정되며 범위는 60~600초입니다.

3. ISE 신뢰 저장소에서 DTLS RADIUS 인증서의 발급자를 내보냅니다.

ISE와 인증자 간에 터널을 설정하려면 두 엔터티 모두 인증서를 교환하고 확인해야 합니다.인증자는 ISE RADIUS DTLS 인증서를 신뢰해야 합니다. 이는 발급자가 인증자의 신뢰 저장소에 있어야 함을 의미합니다.ISE 인증서의 서명자를 내보내려면 이미지에 표시된 대로 Administration(관리) > System(시스템) > Certificates(인증서)로 이동합니다.

RADIUS DTLS 역할이 할당된 인증서를 찾고 이 인증서에 대해 Issued By 필드를 선택합니다.ISE 트러스트 저장소에서 내보내야 하는 인증서의 일반 이름입니다.이렇게 하려면 Administration(관리) > System(시스템) > Certificates(인증서)Trusted Certificates(신뢰할 수 있는 인증서)로 이동합니다.해당 인증서 옆의 확인란을 선택하고 Export(내보내기)를 클릭합니다.

4. 신뢰 지점을 구성하고 인증자에게 인증서를 가져옵니다.

신뢰 지점을 구성하려면 스위치에 로그인하여 명령을 실행합니다.

configure terminal

crypto pki trustpoint isetp

enrollment terminal

revocation-check none

exit

crypto pki 명령을 사용하여 인증서를 가져오면 isetp가 인증됩니다.인증서를 승인하라는 메시지가 표시되면 yes를 입력합니다.

Switch3650(config)#crypto pki authenticate isetp

Enter the base 64 encoded CA certificate.

End with a blank line or the word "quit" on a line by itself

-----BEGIN CERTIFICATE-----

MIIDWTCCAkGgAwIBAgIQL9s4RrhtWLpJjBYB5v0dtTANBgkqhkiG9w0BAQUFADA/

MRMwEQYKCZImiZPyLGQBGRYDY29tMRcwFQYKCZImiZPyLGQBGRYHZXhhbXBsZTEP

MA0GA1UEAxMGTEFCIENBMB4XDTE1MDIxMjA3MzgxM1oXDTI1MDIxMjA3NDgxMlow

PzETMBEGCgmSJomT8ixkARkWA2NvbTEXMBUGCgmSJomT8ixkARkWB2V4YW1wbGUx

DzANBgNVBAMTBkxBQiBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB

AMDSfJwvbJLHHJf4vDTalGjKrDI73c/y269IMZV48xpCruNhglcU8CW/T9Ysj6xk

Oogtx2vpG4XJt7KebDZ/ac1Ymjg7sPBPcnyDZCd2a1b39XakD2puE8lVi4RVkjBH

pss2fTWeuor9dzgb/kWb0YqIsgw1sRKQ2Veh1IXmuhX+wDqELHPIzgXn/DOBF0qN

vWlevrAlmBTxC04t1aPwyRk6b6ptjMeaIv2nqy8tOrldMVYKsPDj8aOrFEQ2d/wg

HDvd6C6LKRBpmAvtrqyDtinEl/CRaEFH7dZpvUSJBNuh7st3JIG8gVFstweoMmTE

zxUONQw8QrZmXDGTKgqvisECAwEAAaNRME8wCwYDVR0PBAQDAgGGMA8GA1UdEwEB

/wQFMAMBAf8wHQYDVR0OBBYEFO0TzYQ4kQ3fN6x6JzCit3/l0qoHMBAGCSsGAQQB

gjcVAQQDAgEAMA0GCSqGSIb3DQEBBQUAA4IBAQAWbWGBeqE2u6IGdKEPhv+t/rVi

xhn7KrEyWxLkWaLsbU2ixsfTeJDCM8pxQItsj6B0Ey6A05c3YNcvW1iNpupGgc7v

9lMt4/TB6aRLVLijBPB9/p2/3SJadCe/YBaOn/vpmfBPPhxUQVPiBM9fy/Al+zsh

t66bcO3WcD8ZaKaER0oT8Pt/4GHZA0Unx+UxpcNuRRz4COArINXE0ULRfBxpIkkF

pWNjH0rlV55edOga0/r60Cg1/J9VAHh3qK2/3zXJE53N+A0h9whpG4LYgIFLB9ep

ZDim7KGsf+P3zk7SsKioGB4kqidHnm34XjlkWFnrCMQH4HC1oEymakV3Kq24

-----END CERTIFICATE-----

Certificate has the following attributes:

Fingerprint MD5: B33EAD49 87F18924 590616B9 C8880D9D

Fingerprint SHA1: FD729A3B B533726F F8450358 A2F7EB27 EC8A1178

% Do you accept this certificate? [yes/no]: yes

Trustpoint CA certificate accepted.

% Certificate successfully imported

5. 스위치의 인증서를 내보냅니다.

스위치에서 DTLS에 사용할 신뢰 지점 및 인증서를 선택하고 내보냅니다.

Switch3650(config)#crypto pki export TP-self-signed-721943660 pem terminal

% Self-signed CA certificate:

-----BEGIN CERTIFICATE-----

MIICKTCCAZKgAwIBAgIBATANBgkqhkiG9w0BAQUFADAwMS4wLAYDVQQDEyVJT1Mt

U2VsZi1TaWduZWQtQ2VydGlmaWNhdGUtNzIxOTQzNjYwMB4XDTE2MDQyNzExNDYw

NloXDTIwMDEwMTAwMDAwMFowMDEuMCwGA1UEAxMlSU9TLVNlbGYtU2lnbmVkLUNl

cnRpZmljYXRlLTcyMTk0MzY2MDCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA

xRybTGD526rPYuD2puMJu8ANcDqQnwunIERgvIWoLwBovuAu7WcRmzw1IDTDryOH

PXt1n5GcQSAOgn+9QdvKl1Z43ZkRWK5E7EGmjM/aL1287mg4/NlrWr4KMSwDQBJI

noJ52CABXUoApuiiJ8Ya4gOYeP0TmsZtxP1N+s+wqjMCAwEAAaNTMFEwDwYDVR0T

AQH/BAUwAwEB/zAfBgNVHSMEGDAWgBSEOKlAPAHBPedwichXL+qUM+1riTAdBgNV

HQ4EFgQUhDipQDwBwT3ncInIVy/qlDPta4kwDQYJKoZIhvcNAQEFBQADgYEAlBNN

wKSS8yBuOH0/jUV7sy3Y9/oV7Z9bW8WFV9QiTQ1lZelvWMTbewozwX2LJvxobGcj

Pi+n99RIH8dBhWwoYl9GTN2LVI22GIPX12jNLqps+Mq/u2qxVm0964Sajs5OlKjQ

69XFfCVot1NA6z2eEP/69oL9x0uaJDZa+6ileh0=

-----END CERTIFICATE-----

구성된 모든 신뢰 지점을 나열하려면 show crypto pki trustpoints 명령을 실행합니다.인증서가 콘솔에 인쇄되면 파일을 복사하여 PC에 저장합니다.

6. ISE 트러스트 저장소로 스위치 인증서를 가져옵니다.

ISE에서 Administration(관리) > Certificates(인증서) > Trusted Certificates(신뢰할 수 있는 인증서)로 이동하고 Import(가져오기)를 클릭합니다.

이제 Browse(찾아보기)를 클릭하고 스위치의 인증서를 선택합니다.(선택 사항) Friendly Name(식별 이름)을 제공하고 ISE 내 인증을 위한 Trust(신뢰) 및 클라이언트 인증 및 Syslog를 위한 Trust(신뢰) 확인란을 선택합니다.그런 다음 이미지에 표시된 대로 Submit(제출)을 클릭합니다.

7. 스위치에서 RADIUS를 구성합니다.

스위치에 RADIUS 컨피그레이션을 추가합니다.DTLS를 통해 ISE와 통신하도록 스위치를 구성하려면 다음 명령을 사용합니다.

radius server ISE22

address ipv4 10.48.23.86

key radius/dtls

dtls port 2083

dtls trustpoint client TP-self-signed-721943660

dtls trustpoint server isetp

나머지 AAA 관련 컨피그레이션은 요구 사항 및 설계에 따라 달라집니다.이 컨피그레이션을 예로 처리:

aaa group server radius ISE

server name ISE22

radius-server attribute 6 on-for-login-auth

radius-server attribute 8 include-in-access-req

radius-server attribute 25 access-request include

aaa authentication dot1x default group ISE

aaa authorization network default group ISE

8. ISE에서 정책을 구성합니다.

ISE에서 인증 및 권한 부여 정책을 구성합니다.이 단계는 설계 및 요구 사항에도 따라 달라집니다.

다음을 확인합니다.

사용자가 인증할 수 있는지 확인하려면 스위치에서 test aaa 명령을 사용합니다.

Switch3650#test aaa group ISE alice Krakow123 new-code

User successfully authenticated

USER ATTRIBUTES

username             0   "alice"

Switch3650#

User successfully authenticated 메시지가 표시됩니다.ISE Operations(ISE 작업) > RADIUS > LiveLog로 이동하고 적절한 로그에 대한 세부 정보를 선택합니다(돋보기 클릭).

보고서 오른쪽에는 단계 목록이 있습니다.목록의 첫 번째 단계가 RADIUS 패킷이 암호화되었는지 확인합니다.

또한 ISE에서 패킷 캡처를 시작하고 test aaa 명령을 한 번 더 실행할 수 있습니다.캡처를 시작하려면 Operations(작업) > Troubleshoot(문제 해결) > Diagnostic Tools(진단 도구) > General Tools(일반 도구) > TCP Dump(TCP 덤프)로 이동합니다.인증에 사용되는 정책 서비스 노드를 선택하고 시작:

인증이 완료되면 Stop and Download(중지 및 다운로드)를 클릭합니다.패킷 캡처를 열 때 DTLS로 암호화된 트래픽을 볼 수 있어야 합니다.

패킷 #813 - #822은 DTLS 핸드셰이크의 일부입니다.핸드셰이크가 성공적으로 협상되면 애플리케이션 데이터가 전송됩니다.패킷 수는 다를 수 있으며 사용된 인증 방법(PAP, EAP-PEAP, EAP-TLS 등)에 따라 달라집니다. 각 패킷의 내용은 암호화됩니다.

모든 데이터가 전송되면 터널이 즉시 해제되지 않습니다. ISE에 구성된 IdleTimeout은 터널을 통해 통신하지 않고 터널을 설정할 수 있는 기간을 결정합니다.타이머가 만료되고 새 Access-Request를 ISE로 전송해야 하는 경우 DTLS 핸드셰이크가 수행되고 터널이 재구축됩니다.

문제 해결

1. ISE는 어떤 요청도 받지 않습니다.

기본 DTLS 포트는 2083입니다.기본 RADIUS 포트는 1645,1646 및 1812,1813입니다.방화벽에서 UDP/2083 트래픽을 차단하지 않는지 확인합니다.

2. DTLS 핸드셰이크가 실패합니다.

ISE에 대한 세부 보고서에서 DTLS 핸드셰이크가 실패했음을 확인할 수 있습니다.

가능한 이유는 핸드셰이크 중에 전송되는 인증서를 스위치나 ISE에서 신뢰하지 않기 때문입니다.인증서 컨피그레이션을 확인합니다.ISE의 RADIUS DTLS 역할 및 스위치의 신뢰 지점에 적절한 인증서가 할당되었는지 확인합니다.