Para habilitar o recurso True SSO em uma máquina virtual (VM) Ubuntu, instale as bibliotecas das quais o recurso True SSO depende, o certificado raiz da Autoridade de Certificação (CA) para oferecer suporte à autenticação confiável e Horizon Agent. Se a autenticação True SSO também for emitida por uma autoridade de certificação subordinada, você deverá instalar toda a cadeia de certificados de certificados de autoridade de certificação raiz e subordinada. Para concluir a configuração da autenticação, você deve editar alguns arquivos de configuração.
Use o procedimento a seguir para habilitar o True SSO em uma VM Ubuntu.
Procedimento
- Na VM Ubuntu, instale o pacote de suporte pkcs11.
sudo apt install libpam-pkcs11
- Instale o pacote libnss3-tools.
sudo apt install libnss3-tools
- Instale o certificado de CA raiz ou a cadeia de certificados.
- Localize o certificado de CA raiz ou a cadeia de certificados que você baixou e transfira-o para um arquivo PEM.
openssl x509 -inform der -in /tmp/certificate.cer -out /tmp/certificate.pem
- Crie um diretório /etc/pki/nssdb para conter o banco de dados do sistema.
sudo mkdir -p /etc/pki/nssdb
- Use o comando certutil para instalar o certificado de CA raiz ou a cadeia de certificados no banco de dados do sistema /etc/pki/nssdb.
sudo certutil -A -d /etc/pki/nssdb -n "root CA cert" -t "CT,C,C" -i /tmp/certificate.pem
- Crie um diretório /etc/pam_pkcs11/cacerts e copie o certificado de CA raiz ou a cadeia de certificados nesse diretório.
mkdir -p /etc/pam_pkcs11/cacerts
sudo cp /tmp/certificate.pem /etc/pam_pkcs11/cacerts
- Crie um link de hash para o certificado de CA raiz ou a cadeia de certificados. No diretório /etc/pam_pkcs11/cacerts, execute o seguinte comando.
- Instale o pacote Horizon Agent, com o True SSO ativado.
sudo ./install_viewagent.sh -T yes
- Adicione o seguinte parâmetro ao Horizon Agentarquivo de configuração personalizada /etc/vmware/viewagent-custom.conf. Use o exemplo a seguir, em que NETBIOS_NAME_OF_DOMAIN é o nome NetBIOS do domínio da sua organização.
NetbiosDomain=NETBIOS_NAME_OF_DOMAIN
- Edite o arquivo de configuração /etc/pam_pkcs11/pam_pkcs11.conf.
- Se necessário, crie o arquivo de configuração /etc/pam_pkcs11/pam_pkcs11.conf. Localize o arquivo de exemplo em /usr/share/doc/libpam-pkcs11/examples, copie-o para o diretório /etc/pam_pkcs11 e renomeie o arquivo para pam_pkcs11. conf. Adicione as informações do seu sistema ao conteúdo do arquivo conforme necessário.
- Modifique o arquivo de configuração /etc/pam_pkcs11/pam_pkcs11.conf para que ele inclua conteúdo semelhante ao exemplo a seguir.
Observação: Para o Ubuntu 20.04, anexe
ms
ao final da linha
use_mappers
.
use_pkcs11_module = coolkey;
pkcs11_module coolkey {
module = /usr/lib/vmware/viewagent/sso/libvmwpkcs11.so;
slot_num = 0;
ca_dir = /etc/pam_pkcs11/cacerts;
nss_dir = /etc/pki/nssdb;
}
mapper ms {
debug = false;
module = internal;
# module = /usr/$LIB/pam_pkcs11/ms_mapper.so;
ignorecase = false;
# ignore domain name
ignoredomain = true;
domain = "DOMAIN.COM"; #<== Replace "DOMAIN.COM" with your organization's domain name
}
use_mappers = digest, cn, pwent, uid, mail, subject, null, ms; #<== For Ubuntu 20.04, append "ms" at end of use_mappers
- Modifique os parâmetros auth no arquivo de configuração do PAM.
- Abra o arquivo de configuração do PAM em /etc/pam.d/gdm-vmwcred.
- Edite o arquivo de configuração do PAM, conforme mostrado no exemplo a seguir.
auth requisite pam_vmw_cred.so
auth sufficient pam_pkcs11.so try_first_pass
- No terminal Linux, defina o modo para o arquivo de configuração /etc/krb5.conf igual a
644
, conforme mostrado no exemplo a seguir.
sudo chmod 644 /etc/krb5.conf
ls -l /etc/krb5.conf
-rw-r--r-- 1 root root xxx xx xx xxxx /etc/krb5.conf
Observação: Se você não modificar os atributos de permissões de
/etc/krb5.conf conforme especificado, o recurso True SSO poderá não funcionar.
- Reinicie a VM e faça login novamente.