Use o procedimento a seguir para integrar uma máquina virtual (VM) do RHEL 8.x a um domínio Active Directory (AD) para redirecionamento de cartão inteligente.
Observação: Os desktops RHEL 8.x não oferecem suporte ao redirecionamento de cartão inteligente e ao Active Directory single sign-on (SSO) ao mesmo tempo. Se você configurar o redirecionamento de smart card em um desktop RHEL 8.x, o Active Directory SSO não funcionará.
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 |
dns_IP_ADDRESS |
Endereço IP do seu servidor de nomes DNS |
rhel8sc.domain.com |
Nome do host totalmente qualificado da sua VM RHEL 8.x |
rhel8sc |
Nome do host não qualificado da sua VM RHEL 8.x |
domain.com |
Nome DNS do seu domínio do AD |
DOMAIN.COM |
Nome DNS do seu domínio do AD, em letras maiúsculas |
DOMÍNIO |
Nome DNS do grupo de trabalho ou domínio NT que inclui o servidor Samba, em letras maiúsculas |
dnsserver.domain.com |
Nome do host do seu servidor AD |
Procedimento
- Na VM do RHEL 8.x, faça o seguinte.
- Defina as configurações de rede e DNS conforme exigido pela sua organização.
- Desative o IPv6.
- Desative o DNS automático (Automatic DNS).
- Configure o arquivo de configuração /etc/hosts para que ele se pareça com o exemplo a seguir.
127.0.0.1 rhel8sc.domain.com rhel8sc localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
dns_IP_ADDRESS dnsserver.domain.com
- Configure o arquivo de configuração /etc/resolv.conf para que ele se pareça com o exemplo a seguir.
# Generated by NetworkManager
search domain.com
nameserver dns_IP_ADDRESS
- Instale os pacotes necessários para a integração do AD.
yum install -y samba-common-tools oddjob-mkhomedir
- Ative o serviço oddjobd.
systemctl enable oddjobd.service
systemctl start oddjobd.service
- Especifique a identidade do sistema e as origens de autenticação.
authselect select sssd with-smartcard with-mkhomedir
- Inicie o serviço oddjobd.
systemctl enable oddjobd.service
systemctl start oddjobd.service
- Para oferecer suporte à autenticação de cartão inteligente, crie o arquivo /etc/sssd/sssd.conf.
touch /etc/sssd/sssd.conf
chmod 600 /etc/sssd/sssd.conf
chown root:root /etc/sssd/sssd.conf
- Adicione o conteúdo necessário a /etc/sssd/sssd.conf, conforme mostrado no exemplo a seguir. Na seção [pam], especifique pam_cert_auth = True.
[sssd]
config_file_version = 2
domains = domain.com
services = nss, pam, pac
[domain/DOMAIN.COM]
id_provider = ad
auth_provider = ad
chpass_provider = ad
access_provider = ad
cache_credentials = true
[pam]
pam_cert_auth = True
- Ative o serviço sssd.
systemctl enable sssd.service
systemctl start sssd.service
- Edite o arquivo de configuração /etc/krb5.conf para que ele se pareça com o exemplo a seguir.
# To opt out of the system crypto-policies configuration of krb5, remove the
# symlink at /etc/krb5.conf.d/crypto-policies which will not be recreated.
includedir /etc/krb5.conf.d/
[logging]
default = FILE:/var/log/krb5libs.log
kdc = FILE:/var/log/krb5kdc.log
admin_server = FILE:/var/log/kadmind.log
[libdefaults]
dns_lookup_realm = false
ticket_lifetime = 24h
renew_lifetime = 7d
forwardable = true
rdns = false
pkinit_anchors = /etc/pki/tls/certs/ca-bundle.crt
spake_preauth_groups = edwards25519
default_realm = DOMAIN.COM
default_ccache_name = KEYRING:persistent:%{uid}
[realms]
DOMAIN.COM = {
kdc = dnsserver.domain.com
admin_server = dnsserver.domain.com
default_domain = dnsserver.domain.com
pkinit_anchors = FILE:/etc/pki/nssdb/certificate.pem
pkinit_cert_match = <KU>digitalSignature
pkinit_kdc_hostname = dnsserver.domain.com
}
[domain_realm]
.domain.com = DOMAIN.COM
domain.com = DOMAIN.COM
- Edite o arquivo de configuração /etc/samba/smb.conf para que ele se pareça com o exemplo a seguir.
[global]
workgroup = DOMAIN
security = ads
passdb backend = tdbsam
printing = cups
printcap name = cups
load printers = yes
cups options = raw
password server = dnsserver.domain.com
realm = DOMAIN.COM
idmap config * : range = 16777216-33554431
template homedir =/home/DOMAIN/%U
template shell = /bin/bash
kerberos method = secrets and keytab
[homes]
comment = Home Directories
valid users = %S, %D%w%S
browseable = No
read only = No
inherit acls = Yes
[printers]
comment = All Printers
path = /var/tmp
printable = Yes
create mask = 0600
browseable = No
[print$]
comment = Printer Drivers
path = /var/lib/samba/drivers
write list = @printadmin root
force group = @printadmin
create mask = 0664
directory mask = 0775
- Ingresse no domínio do AD, conforme mostrado no exemplo a seguir.
net ads join -U AdminUser
A execução do comando
join retorna uma saída semelhante ao exemplo a seguir.
Enter AdminUser's password:
Using short domain name -- DOMAIN
Joined 'RHEL8SC' to dns domain 'domain.com'
- Verifique se a VM do RHEL 8.x ingressou com êxito no domínio do AD.
net ads testjoin
Uma junção do AD bem-sucedida retorna a seguinte saída.
Join is OK