9장. 스마트 카드로 PKINIT를 사용하여 Active Directory 사용자로 인증
AD(Active Directory) 사용자는 IdM에 연결된 데스크탑 클라이언트 시스템에 스마트 카드로 인증하고 TGT(Kerberos ticket-granting ticket)를 가져올 수 있습니다. 이러한 티켓은 클라이언트의 SSO(Single Sign-On) 인증에 사용할 수 있습니다.
사전 요구 사항
- IdM 서버는 스마트 카드 인증을 위해 구성됩니다. 자세한 내용은 스마트 카드 인증을 위한 IdM 서버 구성 또는 Ansible을 사용하여 스마트 카드 인증을 위한 IdM 서버 구성 을 참조하십시오.
- 클라이언트는 스마트 카드 인증을 위해 구성됩니다. 자세한 내용은 스마트 카드 인증을 위한 IdM 클라이언트 구성 또는 Ansible을 사용하여 스마트 카드 인증을 위한 IdM 클라이언트 구성 을 참조하십시오.
-
krb5-pkinit
패키지가 설치되어 있습니다. - AD 서버는 스마트 카드 인증서를 발급한 CA(인증 기관)를 신뢰하도록 구성됩니다. CA 인증서를 NTAuth 저장소로 가져오고( Microsoft 지원참조) CA를 신뢰할 수 있는 CA로 추가합니다. 자세한 내용은 Active Directory 설명서를 참조하십시오.
절차
스마트 카드 인증서를 발급한 CA를 신뢰하도록 Kerberos 클라이언트를 구성합니다.
-
IdM 클라이언트에서
/etc/krb5.conf
파일을 엽니다. 파일에 다음 행을 추가합니다.
[realms] AD.DOMAIN.COM = { pkinit_eku_checking = kpServerAuth pkinit_kdc_hostname = adserver.ad.domain.com }
[realms] AD.DOMAIN.COM = { pkinit_eku_checking = kpServerAuth pkinit_kdc_hostname = adserver.ad.domain.com }
Copy to Clipboard Copied!
-
IdM 클라이언트에서
사용자 인증서에 CRL(Certificate Revocation list) 배포 지점 확장이 포함되어 있지 않은 경우 취소 오류를 무시하도록 AD를 구성합니다.
다음 REG 형식의 콘텐츠를 일반 텍스트 파일에 저장하고 Windows 레지스트리로 가져옵니다.
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Kdc] "UseCachedCRLOnlyAndIgnoreRevocationUnknownErrors"=dword:00000001 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\LSA\Kerberos\Parameters] "UseCachedCRLOnlyAndIgnoreRevocationUnknownErrors"=dword:00000001
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Kdc] "UseCachedCRLOnlyAndIgnoreRevocationUnknownErrors"=dword:00000001 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\LSA\Kerberos\Parameters] "UseCachedCRLOnlyAndIgnoreRevocationUnknownErrors"=dword:00000001
Copy to Clipboard Copied! 또는
regedit.exe
애플리케이션을 사용하여 값을 수동으로 설정할 수 있습니다.- Windows 시스템을 재부팅하여 변경 사항을 적용합니다.
Identity Management 클라이언트에서
kinit
유틸리티를 사용하여 인증합니다. 사용자 이름과 도메인 이름을 사용하여 Active Directory 사용자를 지정합니다.kinit -X X509_user_identity='PKCS11:opensc-pkcs11.so' ad_user@AD.DOMAIN.COM
$ kinit -X X509_user_identity='PKCS11:opensc-pkcs11.so' ad_user@AD.DOMAIN.COM
Copy to Clipboard Copied! -X
옵션은opensc-pkcs11.so 모듈을
pre-authentication 속성으로 지정합니다.