Cos'è il regno
Realmd fornisce un modo semplice per scoprire e unire i domini di identità. Configura i servizi di sistema Linux come sssd o winbind per eseguire l'effettiva autenticazione di rete e le ricerche dell'account utente. Con il rilascio di CentOS/RHEL 7, realmd è completamente supportato e può essere utilizzato per unire i reami IdM, AD o Kerberos. Il vantaggio principale dell'utilizzo di realmd è la possibilità di fornire un semplice comando a una riga per la registrazione in un dominio e per configurare l'autenticazione di rete. Ad esempio, realmd può facilmente configurare:
- Pila PAM
- Livello NSS
- Kerberos
- SSSD
- Sinvolto
Configura CentOS/RHEL 7 come client di Active Directory utilizzando realmd
Segui i passaggi descritti di seguito per configurare il client Linux utilizzando Realmd per la connessione a un dominio Active Directory (AD).
1. Installa i pacchetti richiesti per configurare il client AD.
# yum install realmd oddjob oddjob-mkhomedir sssd adcli openldap-clients policycoreutils-python samba-common samba-common-tools krb5-workstation
Possiamo utilizzare il sottocomando list per assicurarci di non essere attualmente parte di un dominio:
# realm list
L'output dovrebbe essere vuoto. Ora siamo pronti per procedere con il passaggio successivo:scoprire e unirci al dominio.
2. Scopri il dominio di Active Directory e unisciti con i comandi seguenti.
# realm discover ad.example.com ad.example.com type: kerberos realm-name: AD.EXAMPLE.COM domain-name: ad.example.com configured: no server-software: active-directory client-software: sssd required-package: oddjob required-package: oddjob-mkhomedir required-package: sssd required-package: adcli required-package: samba-common-tools
# realm join ad.example.com Password for Administrator: realm: Joined ad.example.com domain
3. Verifica il file di configurazione di kerberose /etc/krb5.conf per includere:
# cat /etc/krb5.conf
# Configuration snippets may be placed in this directory as well
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]
default = DOMAIN.EXAMPLE.COM
dns_lookup_realm = true
dns_lookup_kdc=true
ticket_lifetime = 24h
renew_lifetime = 7d
forwardable = true
rdns = false
default_ccache_name = KEYRING:persistent:%{uid}
default_realm = DOMAIN.EXAMPLE.COM
default_ccache_name = KEYRING:persistent:%{uid}
[realms]
AD.EXAMPLE.COM = {
kdc = [hostname_of_server].domain.example.com:88
admin_server = domain.example.com
}
[domain_realm]
.domain.example.com = DOMAIN.EXAMPLE.COM
domain.example.com = DOMAIN.EXAMPLE.COM 4. Verifica che /etc/sssd/sssd.conf abbia le voci sottostanti.
# cat /etc/sssd/sssd.conf [sssd] domains = domain.example.com config_file_version = 2 services = nss, pam [domain/domain.example.com] ad_server = domain.example.com ad_domain = domain.example.com krb5_realm = DOMAIN.EXAMPLE.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 = True fallback_homedir = /home/%u@%d access_provider = ad enumeration = True
5. Assegnare l'autorizzazione appropriata a sssd.conf.
# chown root:root /etc/sssd/sssd.conf # chmod 0600 /etc/sssd/sssd.conf # restorecon /etc/sssd/sssd.conf # authconfig --enablesssd --enablesssdauth --enablemkhomedir --update # systemctl start sssd
Verifica
Verifica la connessione con il seguente comando:
# id [email protected] # ssh [email protected]
Esempi di questi comandi sono mostrati di seguito.
# id [email protected] uid=1348601103([email protected]) gid=1348600513(domain [email protected]) groups=1348600513(domain [email protected])
# ssh [email protected]@127.0.0.1 [email protected]@127.0.0.1's password: Creating home directory for [email protected]. $ pwd /home/ad.example.com/user