23.3. 스마트 카드를 사용하여 ID 관리 클라이언트에 인증
ID 관리 서버에서 여러 역할 계정이 있는 Identity Management 사용자는 Identity Management 도메인에 연결된 데스크탑 클라이언트 시스템에 스마트 카드로 인증할 수 있습니다. 이를 통해 클라이언트 시스템을 선택한 역할로 사용할 수 있습니다.
지원되는 옵션에 대한 기본 개요는 다음을 참조하십시오.
인증을 사용하도록 환경을 구성하는 방법에 대한 자세한 내용은 다음을 참조하십시오.
인증 방법에 대한 자세한 내용은 다음을 참조하십시오.
23.3.1. ID 관리 클라이언트에서 지원되는 스마트 카드 기반 인증 옵션
ID 관리 클라이언트의 사용자는 ID 관리 클라이언트에서 스마트 카드를 사용하여 인증할 때 다음 옵션을 사용할 수 있습니다.
- 로컬 인증
- 로컬 인증에는 다음을 사용한 인증이 포함됩니다.
- 텍스트 콘솔
- GDM(Gnome Display Manager)과 같은 그래픽 콘솔
- 로컬 인증 서비스 (예:
su
또는sudo
)
ssh
를 사용한 원격 인증- 스마트 카드의 인증서는 PIN 보호 SSH 개인 키와 함께 저장됩니다.
FTP와 같은 다른 서비스를 사용한 스마트 카드 기반 인증은 지원되지 않습니다.
23.3.2. 스마트 카드 인증을 위해 ID 관리 클라이언트 준비
Identity Management 관리자로서 다음 단계를 수행하십시오.
- 서버에서 클라이언트를 구성할 쉘 스크립트를 만듭니다.
- ipa-advise config-client-for-smart-card-auth 명령을 사용하여 출력을 파일에 저장합니다.
# ipa-advise config-client-for-smart-card-auth > client_smart_card_script.sh
- 스크립트 파일을 열고 해당 콘텐츠를 검토합니다.
- 10.0.0.1 유틸리티를 사용하여 파일에 실행 권한
을
추가합니다.# chmod +x client_smart_card_script.sh
- 스크립트를 클라이언트에 복사하고 실행합니다. 스마트 카드 인증서에 서명한 CA(인증 기관)를 사용하여 PEM 파일의 경로를 추가합니다.
# ./client_smart_card_script.sh CA_cert.pem
또한 외부 CA(인증 기관)가 스마트 카드의 인증서에 서명한 경우 스마트 카드 CA를 신뢰할 수 있는 CA로 추가합니다.
- Identity Management 서버에서 CA 인증서를 설치합니다.
# ipa-cacert-manage -n "SmartCard CA" -t CT,C,C install ca.pem # ipa-certupdate
모든 복제본 및 클라이언트에서도ipa-certupdate
를 반복합니다. - HTTP 서버를 다시 시작합니다.
# systemctl restart httpd
모든 복제본에서 systemctl restart httpd 도 반복합니다.
참고
SSSD를 사용하면 관리자가 인증서에 정의된 OCSP(Online Certificate Status Protocol) 서버에 연결할 수 없는 경우와 같이
certificate_verification
매개변수를 사용하여 인증서 확인 프로세스를 조정할 수 있습니다. 자세한 내용은 sssd.conf(5) 매뉴얼 페이지를 참조하십시오.
23.3.3. 콘솔 로그인을 사용하여 스마트 카드가 있는 ID 관리 클라이언트에서 인증
Identity Management 사용자로 인증하려면 사용자 이름과 PIN을 입력합니다.
- 명령줄에서 로그인하는 경우:
client login: idm_user PIN for PIV Card Holder pin (PIV_II) for user idm_user@idm.example.com:
- GDM(Gnome Desktop Manager)을 사용하여 로그인할 때 필요한 사용자를 선택한 후 GDM에서 스마트 카드 PIN을 입력하라는 메시지를 표시합니다.
그림 23.13. Gnome 데스크탑 관리자에 스마트 카드 PIN 입력
Active Directory 사용자로 인증하려면 NetBIOS 도메인 이름을 사용하는 형식으로 사용자 이름을 입력합니다.
AD.EXAMPLE.COM\ad_user
또는 ad_user@AD.EXAMPLE.COM
.
인증에 실패하는 경우 A.4절. “스마트 카드 인증 오류 조사” 을 참조하십시오.
23.3.4. 로컬 시스템에서 원격 시스템에 인증
로컬 시스템에서 다음 단계를 수행하십시오.
- 스마트 카드를 삽입합니다.
ssh
를 시작하고-I
옵션을 사용하여 PKCS#11 라이브러리를 지정합니다.- Identity Management 사용자:
$ ssh -I /usr/lib64/opensc-pkcs11.so -l idm_user server.idm.example.com Enter PIN for 'PIV_II (PIV Card Holder pin)': Last login: Thu Apr 6 12:49:32 2017 from 10.36.116.42
- Active Directory 사용자:
$ ssh -I /usr/lib64/opensc-pkcs11.so -l ad_user@ad.example.com server.idm.example.com Enter PIN for 'PIV_II (PIV Card Holder pin)': Last login: Thu Apr 6 12:49:32 2017 from 10.36.116.42
- 선택 사항입니다.
id
유틸리티를 사용하여 원하는 사용자로 로그인했는지 확인합니다.- Identity Management 사용자:
$ id uid=1928200001(idm_user) gid=1928200001(idm_user) groups=1928200001(idm_user) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
- Active Directory 사용자:
$ id uid=1171201116(ad_user@ad.example.com) gid=1171201116(ad_user@ad.example.com) groups=1171201116(ad_user@ad.example.com),1171200513(domain users@ad.example.com) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
인증에 실패하는 경우 A.4절. “스마트 카드 인증 오류 조사” 을 참조하십시오.
23.3.5. 추가 리소스
- 스마트 카드로
ssh
를 사용한 인증은 원격 시스템에서 TGT( ticket-granting ticket)를 받을 수 없습니다. 원격 시스템에서 TGT를 가져오려면 관리자가 로컬 시스템에서 Kerberos를 구성하고 Kerberos 위임을 활성화해야 합니다. 필수 구성의 예는 이 Kerberos 지식 기반 항목을 참조하십시오. - OpenSSH를 통한 스마트 카드 인증에 대한 자세한 내용은 보안 가이드에서 Smart Cards to supply Credentials to OpenSSH 를 참조하십시오.