이 문서에서는 ISE(Identity Service Engine)와 AD(Active Directory)가 통신하는 방법, 사용되는 프로토콜, AD 필터 및 흐름에 대해 설명합니다.
Cisco에서는 다음에 대한 기본 지식을 갖춘 것을 권장합니다.
이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다. 이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다. 현재 네트워크가 작동 중인 경우 모든 명령의 잠재적인 영향을 미리 숙지하시기 바랍니다.
Kerberos의 3개 헤드는 KDC(Key Distribution Center), 클라이언트 사용자 및 액세스할 서버로 구성됩니다. KDC는 DC(Domain Controller)의 일부로 설치되며 두 가지 서비스 기능을 수행합니다. AS(Authentication Service) 및 TGS(Ticket-Granting Service).
클라이언트가 서버 리소스에 처음 액세스할 때 다음과 같은 세 가지 교환이 수행됩니다.

네트워크에 처음 로그온할 때 사용자는 액세스 협상을 수행하고 도메인 내 KDC의 AS 부분에서 확인할 로그인 이름 및 비밀번호를 제공해야 합니다. KDC는 Active Directory 사용자 계정 정보에 액세스할 수 있습니다. 인증되면 사용자에게 로컬 도메인에 유효한 TGT(Ticket Granting Ticket)가 부여됩니다. TGT의 기본 수명은 10시간이며 사용자가 비밀번호를 다시 입력할 필요 없이 사용자 로그온 세션 내내 갱신됩니다. TGT는 로컬 시스템의 휘발성 메모리 공간에 캐시되며 네트워크 전체에서 서비스에 대한 세션을 요청하는 데 사용됩니다.
사용자는 서버 서비스에 대한 액세스가 필요할 때 KDC의 TGS 부분에 TGT를 제공합니다. KDC의 TGS는 사용자 TGT를 인증하고 클라이언트와 원격 서버 모두에 대한 티켓 및 세션 키를 생성합니다. 그런 다음 이 정보(서비스 티켓)는 클라이언트 컴퓨터에서 로컬로 캐시됩니다. TGS는 클라이언트 TGT를 받고 자체 키로 읽습니다. TGS가 클라이언트 요청을 승인하면 클라이언트와 대상 서버 모두에 대해 서비스 티켓이 생성됩니다. 클라이언트는 이전에 AS 회신에서 검색된 TGS 세션 키를 사용하여 해당 부분을 읽습니다. 클라이언트는 다음 클라이언트/서버 교환에서 TGS 응답의 서버 부분을 대상 서버에 표시합니다.
예:

인증된 사용자에 대한 ISE의 패킷 캡처:

AS-REQ에는 사용자 이름이 포함됩니다. 비밀번호가 정확하면 AS 서비스는 사용자 비밀번호로 암호화된 TGT를 제공합니다. 그런 다음 TGT는 세션 티켓을 받기 위해 TGT 서비스를 제공합니다. 세션 티켓을 받으면 인증에 성공합니다.
이는 클라이언트가 제공한 비밀번호가 잘못된 예입니다.

비밀번호가 올바르지 않으면 AS 요청이 실패하고 TGT가 수신되지 않습니다.
다음 예에서는 비밀번호가 잘못된 경우 ad_agent.log 파일에 대한 로그입니다.
2020-01-14 13:36:05,442 디버그 ,140574072981248,krb5: RALMAAIT.COM,LwKrb5TraceCallback(),lwadvapi/threaded/lwkrb5.c:1325에 요청(276바이트)을 보냈습니다.
2020-01-14 13:36:05,444 디버그 ,140574072981248,krb5: KDC에서 오류 수신: -1765328360/사전 인증 실패,LwKrb5TraceCallback(),lwadvapi/threaded/lwkrb5.c:1325
2020-01-14 13:36:05,444 디버그 ,140574072981248,krb5: 사전 인증 다시 입력 유형: 16, 14, 19, 2,LwKrb5TraceCallback(),lwadvapi/threaded/lwkrb5.c:1325
2020-01-14 13:36:05,444 WARNING,140574072981248,[LwKrb5GetTgtImpl ../../lwadvapi/threaded/krbtgt.c:329] KRB5 오류 코드: -1765328360(메시지: 사전 인증 실패),LwTranslateKrb5Error(),lwadvapi/threaded/lwkrb5.c:892
2020-01-14 13:36:05,444 DEBUG ,140574072981248,[LwKrb5InitializeUserLoginCredentials()] 오류 코드: 40022(기호: LW_ERROR_PASSWORD_MISMATCH),LwKrb5InitializeUserLoginCredentials(),lwadvapi/threaded/lwkrb5.c:1453
ISE는 MS-RPC over SMB를 사용하며, SMB는 인증을 제공하며, 지정된 RPC 서비스가 있는 위치를 찾기 위해 별도의 세션이 필요하지 않습니다. 클라이언트와 서버 간에 통신하기 위해 "명명된 파이프"라는 메커니즘을 사용합니다.

협상 프로토콜 요청/응답 행은 SMB의 언어를 협상하고 세션 설정 요청/응답은 인증을 수행합니다. 트리 연결 요청 및 응답이 요청된 리소스에 연결합니다. 특별 공유 IPC$에 연결되었습니다. 이 프로세스 간 통신 공유는 호스트 간의 통신 수단을 제공하며 MSRPC 기능을 위한 전송으로도 사용됩니다.
패킷 77은 Create Request File이고 파일 이름은 연결된 서비스(이 예에서는 netlogon 서비스)의 이름입니다.
패킷 83 및 86은 Network_INFO 필드의 AD에 ISE의 클라이언트 인증을 위한 사용자 이름을 보내는 NetlogonSamLogonEX 요청입니다. NetlogonSamLogonEX 응답 패킷이 결과에 응답합니다.
NetlogonSamLogonEX 응답에 대한 일부 플래그 값:
0xc000006a는 STATUS_WRONG_PASSWORD입니다.
0x00000000은 STATUS_SUCCESS입니다.
0x00000103은 STATUS_PENDING입니다.
ISE는 LDAP, KRB 및 MSRBC를 사용하여 가입/탈퇴 및 인증 프로세스 동안 AD와 통신합니다. 다음 섹션에서는 AD에서 특정 DC에 연결하고 해당 DC에 대한 사용자 인증에 사용되는 프로토콜, 검색 형식 및 메커니즘을 제공합니다. 어떤 이유로든 DC가 오프라인 상태가 되면 ISE는 사용 가능한 다음 DC로 장애 조치하며 인증 프로세스는 영향을 받지 않습니다.
GC(글로벌 카탈로그 서버)는 포리스트에 있는 모든 Active Directory 개체의 복사본을 저장하는 도메인 컨트롤러입니다. 도메인 디렉터리에 있는 모든 개체의 전체 복사본과 다른 모든 포리스트 도메인의 모든 개체의 부분 복사본을 저장합니다. 글로벌 카탈로그를 통해 사용자와 응용 프로그램은 GC에 포함된 특성을 검색하면서 현재 포리스트의 모든 도메인에서 개체를 찾을 수 있습니다. 글로벌 카탈로그는 각 도메인의 각 포리스트 개체에 대한 기본(불완전한) 특성 집합(부분 특성 집합, PAT)을 포함합니다.
GC는 포리스트의 모든 도메인 디렉터리 파티션에서 데이터를 수신하고 표준 AD 복제 서비스로 복사됩니다.
Active Directory 및 ISE 통합의 사전 요구 사항.
ISE는 도메인 검색을 적용하여 3단계로 조인 도메인에 대한 정보를 가져옵니다.
또한 Cisco ISE는 DNS 도메인 이름(UPN 접미사), 대체 UPN 접미사 및 NTLM 도메인 이름을 검색합니다.
ISE는 사용 가능한 DC 및 GC에 대한 모든 정보를 얻기 위해 DC 검색을 적용합니다.
DC 우선순위를 계산하는 데 사용되는 한 가지 요인은 DC가 CLDAP ping에 응답하는 데 걸리는 시간입니다. 더 빠른 응답이 더 높은 우선순위를 수신합니다.
참고: CLDAP는 ISE에서 DC와의 연결을 설정하고 유지 관리하는 데 사용하는 메커니즘입니다. 첫 번째 DC 응답까지의 응답 시간을 측정합니다. DC에서 응답이 표시되지 않으면 실패합니다. 응답 시간이 2.5초보다 큰 경우 경고 CLDAP는 사이트의 모든 DC를 ping합니다(사이트가 없는 경우 도메인의 모든 DC). CLDAP 응답에는 DC 사이트 및 클라이언트 사이트(ISE 컴퓨터가 할당된 사이트)가 포함됩니다.
ISE가 종료되면 AD는 다음을 고려해야 합니다.
ISE에 연결된 DC가 오프라인 상태가 되거나 어떤 이유로든 연결할 수 없는 경우 DC 장애 조치가 ISE에서 자동으로 트리거됩니다. DC 장애 조치는 다음 조건에 의해 트리거될 수 있습니다.
이러한 경우 AD 커넥터는 차단된 목록("불량" DC가 차단된 목록에 있음)으로 DC 선택을 시작하고 선택된 DC와의 통신을 시도합니다. 차단 목록에서 선택한 DC가 캐시되지 않았습니다.
AD 커넥터는 적절한 시간 내에 장애 조치를 완료해야 합니다(또는 불가능한 경우 실패). 따라서 AD 커넥터는 장애 조치 중에 제한된 수의 DC를 시도합니다. ISE가 잘못된 DC를 사용하지 못하도록 복구할 수 없는 네트워크 또는 서버 오류가 있는 경우 ISE는 AD 도메인 컨트롤러를 차단합니다. DC가 CLDAP ping에 응답하지 않으면 차단 목록에 추가되지 않습니다. ISE는 응답하지 않을 경우에만 DC의 우선순위를 낮춥니다.
ISE는 이러한 검색 형식 중 하나를 사용하여 AD에서 시스템 또는 사용자를 검색합니다. 검색이 시스템에 대한 것이면 ISE는 시스템 이름 끝에 "$"를 추가합니다. 다음은 AD에서 사용자를 식별하는 데 사용되는 ID 유형 목록입니다.
필터는 AD와 통신할 엔터티를 식별하는 데 사용됩니다. ISE는 항상 사용자 및 시스템 그룹에서 엔터티를 검색합니다. 검색 필터의 예:




| 개정 | 게시 날짜 | 의견 |
|---|---|---|
3.0 |
04-Aug-2026
|
서론, 제목, 맞춤법, 문법, 가로줄 삽입으로 섹션/가독성을 구분하고 대체 텍스트를 업데이트했습니다. |
2.0 |
03-Aug-2022
|
문법, 구조, 기계 번역, 스타일, 형식 |
1.0 |
06-Feb-2020
|
최초 릴리스 |