Para configurar o redirecionamento de cartão inteligente em uma máquina virtual (VM) RHEL 8.x, instale as bibliotecas das quais o recurso depende, o certificado de CA raiz para oferecer suporte à autenticação confiável de cartões inteligentes e a biblioteca PC/SC Lite necessária.

Pré-requisitos

Integrar uma máquina virtual RHEL 8.x com Active Directory para redirecionamento de cartão inteligente

Procedimento

  1. Instale as bibliotecas necessárias.
    yum install -y opensc pcsc-lite pcsc-lite-libs pcsc-lite-ccid nss-tools
  2. Ative o serviço pcscd.
    systemctl enable pcscd
    systemctl start pcscd
  3. Certifique-se de que o arquivo de configuração /etc/sssd/sssd.conf contenha as seguintes linhas, que ativam a autenticação do cartão inteligente.
    [pam]
    pam_cert_auth = True
  4. Copie o certificado de CA necessário para /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
  5. Para verificar o status do cartão inteligente, execute os seguintes comandos pkcs11-tool e confirme se eles retornam a saída correta.
    pkcs11-tool -L
    
    pkcs11-tool --login -O
    
    pkcs11-tool --test --login
  6. Configure o módulo PKCS11.
    cp libcmP11.so /usr/lib64/
  7. Crie o arquivo /usr/share/p11-kit/modules/libcmP11.module. Adicione o seguinte conteúdo ao arquivo.
    # 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
  8. Atualize o PC/SC Lite para a versão 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
  9. Instale o pacote Horizon Agent, com o redirecionamento de cartão inteligente ativado.
    sudo ./install_viewagent.sh -m yes
  10. Reinicie a máquina virtual e faça login novamente.