10.3. IdM Kerberos 6443이 PKINIT를 사용하고 CA 인증서가 올바르게 있는지 확인
다음 절차에 따라 IdM Kerberos KDC가 PKINIT를 사용할 수 있는지 확인하고 CA 인증서가 올바르게 배치되었는지 확인하는 방법도 설명합니다.
사전 요구 사항
- 스마트 카드에서 사용할 IdM 서버 및 클라이언트를 설치하고 구성했습니다.
- 스마트 카드 리더를 감지하고 스마트 카드의 내용을 표시할 수 있습니다. 시스템의 스마트 카드 액세스 테스트를 참조하십시오.
절차
kinit
유틸리티를 실행하여 스마트 카드에 저장된 인증서를 사용하여idmuser1
로 인증합니다.$ kinit -X X509_user_identity=PKCS11: idmuser1 MyEID (sctest) PIN:
- 스마트 카드 Pin을 입력합니다. Pin을 묻지 않은 경우 스마트 카드 리더를 감지하고 스마트 카드의 내용을 표시할 수 있는지 확인하십시오. 스마트 카드 인증 테스트 단원을 참조하십시오.
PIN이 수락되고 암호를 입력하라는 메시지가 표시되면 CA 서명 인증서가 누락되었을 수 있습니다.
openssl
명령을 사용하여 CA 체인이 기본 인증서 번들 파일에 나열되어 있는지 확인합니다.$ openssl crl2pkcs7 -nocrl -certfile /var/lib/ipa-client/pki/ca-bundle.pem | openssl pkcs7 -print_certs -noout subject=O = IDM.EXAMPLE.COM, CN = Certificate Authority issuer=O = IDM.EXAMPLE.COM, CN = Certificate Authority
인증서의 유효성을 확인합니다.
idmuser1
의 사용자 인증 인증서 ID를 찾습니다.$ pkcs11-tool --list-objects --login [...] Certificate Object; type = X.509 cert label: Certificate subject: DN: O=IDM.EXAMPLE.COM, CN=idmuser1 ID: 01
DER 형식의 스마트 카드에서 사용자 인증서 정보를 읽습니다.
$ pkcs11-tool --read-object --id 01 --type cert --output-file cert.der Using slot 0 with a present token (0x0)
DER 인증서를 PEM 형식으로 변환합니다.
$ openssl x509 -in cert.der -inform DER -out cert.pem -outform PEM
인증서에 CA까지 유효한 발행자 서명이 있는지 확인합니다.
$ openssl verify -CAfile /var/lib/ipa-client/pki/ca-bundle.pem <path>/cert.pem cert.pem: OK
스마트 카드에 여러 인증서가 포함된 경우
kinit
에서 인증을 위해 올바른 인증서를 선택하지 못할 수 있습니다. 이 경우certid=<ID> 옵션을 사용하여
지정해야 합니다.kinit
명령에 대한 인수로 인증서 ID를스마트 카드에 저장된 인증서 수를 확인하고 사용 중인 인증서의 인증서 ID를 가져옵니다.
$ pkcs11-tool --list-objects --type cert --login Using slot 0 with a present token (0x0) Logging in to "MyEID (sctest)". Please enter User PIN: Certificate Object; type = X.509 cert label: Certificate subject: DN: O=IDM.EXAMPLE.COM, CN=idmuser1 ID: 01 Certificate Object; type = X.509 cert label: Second certificate subject: DN: O=IDM.EXAMPLE.COM, CN=ipauser1 ID: 02
인증서 ID 01을 사용하여
kinit
를 실행합니다.$ kinit -X kinit -X X509_user_identity=PKCS11:certid=01 idmuser1 MyEID (sctest) PIN:
klist
를 실행하여 Kerberos 인증 정보 캐시의 내용을 확인합니다.$ klist Ticket cache: KCM:0:11485 Default principal: idmuser1@EXAMPLE.COM Valid starting Expires Service principal 10/04/2021 10:50:04 10/05/2021 10:49:55 krbtgt/EXAMPLE.COM@EXAMPLE.COM
완료되면 활성 Kerberos 티켓을 삭제합니다.
$ kdestroy -A
추가 리소스
-
kinit
도움말 페이지를 참조하십시오. -
kdestroy
man 페이지를 참조하십시오.