RHEL 8.x VM(가상 시스템)에서 스마트 카드 리디렉션을 구성하려면 기능이 의존하는 라이브러리, 신뢰할 수 있는 스마트 카드 인증을 지원하기 위한 루트 CA 인증서 및 필요한 PC/SC Lite 라이브러리를 설치합니다.
사전 요구 사항
프로시저
- 필수 라이브러리를 설치합니다.
# yum install -y opensc pcsc-lite pcsc-lite-libs pcsc-lite-ccid nss-tools
- pcscd 서비스를 사용하도록 설정합니다.
# systemctl enable pcscd # systemctl start pcscd
- /etc/sssd/sssd.conf 구성 파일에 스마트 카드 인증을 사용하도록 설정하는 다음 줄이 포함되어 있는지 확인합니다.
[pam] pam_cert_auth = True
- 필요한 CA 인증서를 /etc/sssd/pki/sssd_auth_ca_db.pem에 복사합니다.
# openssl x509 -inform der -in certificate.cer -out certificate.pem # cp certificate.pem /etc/sssd/pki/sssd_auth_ca_db.pem
- 스마트 카드의 상태를 확인하려면 다음 pkcs11-tool 명령을 실행하고 올바른 출력을 반환하는지 확인합니다.
# pkcs11-tool -L # pkcs11-tool --login -O # pkcs11-tool --test --login
- PKCS11 모듈을 설정합니다.
cp libcmP11.so /usr/lib64/
- /usr/share/p11-kit/modules/libcmP11.module 파일을 생성합니다. 파일에 다음 컨텐츠를 추가합니다.
# This file describes how to load the opensc module # See: http://p11-glue.freedesktop.org/doc/p11-kit/config.html # This is a relative path, which means it will be loaded from # the p11-kit default path which is usually $(libdir)/pkcs11. # Doing it this way allows for packagers to package opensc for # 32-bit and 64-bit and make them parallel installable module: /usr/lib64/libcmP11.so priority: 99
- PC/SC Lite를 버전 1.8.8로 업데이트합니다.
# yum install -y git flex autoconf automake libtool libudev-devel flex # git clone https://salsa.debian.org/rousseau/PCSC.git # cd PCSC # git checkout -b pcsc-1.8.8 1.8.8 # ./bootstrap # ./configure --build=x86_64-redhat-linux-gnu --host=x86_64-redhat-linux-gnu --program-prefix= --disable-dependency-tracking --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --sysconfdir=/etc --datadir=/usr/share --includedir=/usr/include --libdir=/usr/lib64 --libexecdir=/usr/libexec --localstatedir=/var --sharedstatedir=/var/lib --mandir=/usr/share/man --infodir=/usr/share/info --disable-static --enable-usbdropdir=/usr/lib64/pcsc/drivers # make # make install
- 스마트 카드 리디렉션을 사용하도록 설정하고 Horizon Agent 패키지를 설치합니다.
# sudo ./install_viewagent.sh -m yes
- 가상 시스템을 다시 시작하고 다시 로그인합니다.