materials

Afegir un client GNU/Linux a Active Directory

Introducció

En ocasions necessitem afegir un equip GNU/Linux al nostre domini Active Directory. En el cas d’Ubuntu Desktop, des de la versió 22.04 tenim una opció en la instal·lació que podem marcar i ens pregunta les dades del domini per a afegir l’equip automàticament. Si no marquem eixa opció, o amb altres distribucions, podem fer-ho manualment de diverses formes. Una de les més senzilles és utilitzant sssd.

Els paquets que necessitarem són:

SSSD

El dimoni de serveis de seguretat del sistema (System Security Services Daemon, SSSD) és un servei que permet accedir a mecanismes d’autenticació i directoris remotos com LDAP, Active Directory i regnes kerberos. Això permet als usuaris autentificar-se en un equip local utilitzant un compte del servidor.

A més, igual que fa Windows, SSSD manté una caché d’identitats en l’equip local la qual cosa permet a un usuari iniciar sessió encara que el servidor no estiga disponible si ja l’ha iniciat abans en aquest equip.

El fitxer de configuració és /etc/sssd/sssd.conf.

Afegir un Ubuntu al instal·lar el sistema

L’instal·lador d’Ubuntu Desktop inclou una opció per a afegir l’equip que estem instal·lant al domini en el procés d’instal·lació del sistema operatiu:

Afegir equip a AD

Si marquem aquesta opció en la següent pantalla ens demana el nom del domini i un compte per a afegir l’equip al domini (normalment el de l’Administrador):

Configurar AD

Instal·lació manual

Per a instal·lar els paquets que necessite escrivim:

apt-get install realmd sssd-ad sssd-tools adcli

Ara podem provar que l’equip troba el domini amb:

sudo realm -v discover mydomain.lan

Ens ha de mostrar el nom del domini i la IP del DC.

Per últim afegim l’equip al domini amb

realm join -v -U Administrador mydomain.lan

L’opció -v és per a obtindre més informació del procés.

Si tot ha funcionat ja tenim equip afegit al domini. Si falla per falta de permisos (Couldn’t authenticate to active directory SASL(-1)) és que no tenim instal·lat kerberos així que ho instal·lem ara.

Instal·lació de kerberos

Per a instal·lar kerberos fem:

sudo apt install krb5-user

Durant el procés d’instal·lació s’ens demana el nom del regne (ens pregunta pel realm que és com kerberos anomena al domini on s’autenticarem). Indicarem el nom del nostre domini en majúscules (per exemple MYDOMAIN.LAN). Si no ho fem així més avant (al executar el comando kinit) obtindrem un error (KDC reply did not match expectations while getting initial credentials). Podem canviar el nom del domini en el fitxer /etc/krb5.conf editant la línia default_realm.

Per últim editem el fitxer de configuració de kerberos (/etc/krb5.conf) i afegim en la secció [libdefaults]la línia:

rdns = false

Ara tornem a executar el comando per a afegir l’equip al domini realm join i tot ha de funcionar correctament.

A continuació canviem el nom del nostre equip per a que incloga el domini

hostnamectl set-hostname mymachine.mydomain.lan

Altres configuracions

Ja tenim l’equip afegit al domini i el podem vore des de l’eina Usuaris i equips d’Active Directory. També podem obtindre informació de qualsevol usuari del domini des de la terminal de l’equip amb:

id Administrador@mydomain.lan

Podem iniciar sessió amb un usuari del domini amb

su Administrador@mydomain.lan

o

sudo login Administrador@mydomain.lan

Encara ens queden unes coses per configurar per a millorar la usabilitat del sistema. En el fitxer de configuració de sssd /etc/sssd/sssd.conf trobem les línies:

La primera vegada que un usuari del domini inicia la sessió en l’equip no es crea per defecte el seu home. Per a que es cree executem el comando:

sudo pam-auth-update --enable mkhomedir

Iniciar sessió des de l’entorn gràfic

Per defecte la pantalla d’inici d’Ubuntu només mostra els usuaris locals per a iniciar sessió. Però polsant en ‘No es troba en la llista’ podem escriure manualment en nom de l’usuari.

Bibliografia