Para oferecer suporte ao True SSO em desktops RHEL/CentOS 8.x, você deve primeiro integrar a máquina virtual (VM) base ao seu domínio Active Directory (AD). Em seguida, você deve modificar determinadas configurações no sistema para oferecer suporte ao recurso True SSO.
Observação: O SSO verdadeiro não é compatível com desktops RHEL 8.x de clone instantâneo.
Alguns exemplos no procedimento usam valores de espaço reservado para representar entidades em sua configuração de rede, como o nome DNS do seu domínio do AD. Substitua os valores do espaço reservado por informações específicas para sua configuração, conforme descrito na tabela a seguir.
Valor do espaço reservado |
Descrição |
meudomínio.com |
Nome DNS do seu domínio do AD |
MEUDOMÍNIO.COM |
Nome DNS do seu domínio do AD, em letras maiúsculas |
MEUDOMÍNIO |
Nome do seu domínio NetBIOS |
Procedimento
- Na VM RHEL/CentOS 8.x, verifique a conexão de rede com Active Directory.
realm discover mydomain.com
- Instale os pacotes de dependências necessários.
yum install oddjob oddjob-mkhomedir sssd adcli samba-common-tools
- Ingresse no domínio do AD.
realm join --verbose mydomain.com -U administrator
- 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
- Copie o certificado para o arquivo /etc/sssd/pki/sssd_auth_ca_db.pem.
sudo cp /tmp/certificate.pem /etc/sssd/pki/sssd_auth_ca_db.pem
- Modifique o arquivo de configuração /etc/sssd/sssd.conf, conforme mostrado no exemplo a seguir.
[sssd]
domains = mydomain.com
config_file_version = 2
services = nss, pam
[domain/mydomain.com]
ad_domain = mydomain.com
krb5_realm = IMYDOMAIN.COM
realmd_tags = manages-system joined-with-adcli
cache_credentials = True
id_provider = ad
krb5_store_password_if_offline = True
default_shell = /bin/bash
ldap_id_mapping = True
use_fully_qualified_names = False <---------------- Use short name for user
fallback_homedir = /home/%u@%d
access_provider = ad
ad_gpo_map_interactive = +gdm-vmwcred <---------------- Add this line for SSO
[pam] <---------------- Add pam section for certificate logon
pam_cert_auth = True <---------------- Add this line to enable certificate logon for system
pam_p11_allowed_services = +gdm-vmwcred <---------------- Add this line to enable certificate logon for VMware Horizon Agent
[certmap/mydomain.com/truesso] <---------------- Add this section and following lines to set match and map rule for certificate user
matchrule = <EKU>msScLogin
maprule = (|(userPrincipal={subject_principal})(samAccountName={subject_principal.short_name}))
domains = mydomain.com
priority = 10
- Modifique o arquivo de configuração /etc/krb5.conf definindo o modo como igual a
644
.
Observação: Se você não modificar
/etc/krb5.conf conforme especificado, o recurso True SSO poderá não funcionar.
- Instale o pacote Horizon Agent, com o True SSO ativado.
sudo ./install_viewagent.sh -T yes
- Modifique o arquivo de configuração /etc/vmware/viewagent-custom.conf para que ele inclua a seguinte linha.
- Reinicie a VM e faça login novamente.