Prefazione
Active Directory (AD) è il cuore pulsante delle infrastrutture IT aziendali che utilizzano l’ambiente Microsoft. Al suo interno, il concetto di dominio riveste un ruolo fondamentale: è attraverso il dominio che si centralizza l’autenticazione, si assegnano permessi e si organizza l’infrastruttura gerarchica delle risorse aziendali. Comprendere il significato e il funzionamento di un dominio in Active Directory è essenziale per ogni system administrator, specialmente in contesti dove è richiesta integrazione tra ambienti Windows e sistemi Linux o in scenari di gestione ibrida.
Il dominio è molto più di un semplice contenitore: è un confine di sicurezza, una base per le Group Policy, e un mezzo per amministrare utenti, computer, gruppi e risorse. Approfondiamo nel dettaglio cosa significa, perché è importante, quando intervengono problemi legati al dominio, come risolverli e come gestire ambienti misti con Linux.
Domande e Risposte
Che cosa è un dominio in Active Directory?
È un’unità logica di una rete gestita da un controller di dominio. Contiene oggetti (utenti, computer, gruppi) e applica policy centralizzate.
Quando si verificano problemi con il dominio?
I problemi emergono durante join di client, autenticazioni fallite, disallineamento di tempo, DNS errati o connessioni fallite ai controller di dominio.
Perché si verificano problemi di dominio?
Le cause comuni includono: DNS non corretti, clock fuori sync (Kerberos richiede clock allineati), servizi di Active Directory offline, configurazioni errate in /etc/hosts o resolv.conf su Linux.
Chi è coinvolto nella gestione del dominio?
System administrator Microsoft per la parte AD, e system administrator Linux per configurare correttamente la join del dominio, autenticazione Kerberos e accesso Samba/Winbind.
Come si affrontano e risolvono i problemi di dominio, specialmente da Linux?
Analizzeremo le soluzioni tecniche dettagliate nel corpo dell’articolo.
Analisi
- Comprendere il concetto di dominio
Un dominio in Active Directory è una partizione logica che consente di gestire in modo centralizzato risorse e policy. Tutti i membri di un dominio sono autenticati tramite uno o più domain controller (DC), utilizzando Kerberos come protocollo primario. Le Group Policy Objects (GPO) vengono applicate a utenti e computer, organizzati in Organizational Units (OU).
- Struttura tecnica di un dominio
- Domain Controller (DC): server che gestisce l’AD.
- DNS interno: ogni DC funge anche da server DNS per la risoluzione dei nomi AD.
- LDAP/Kerberos: per autenticazione e consultazione dell’AD.
- SYSVOL: per la replica di GPO e script.
- Come unire una macchina Linux a un dominio
Esempio con sistema Debian/Ubuntu:
a. Prerequisiti:
- Sincronizzazione NTP col DC:
sudo apt install ntp
sudo timedatectl set-ntp true
sudo systemctl restart ntp
- DNS puntato al DC:
sudo nano /etc/resolv.conf
nameserver 192.168.1.10 (indirizzo IP del domain controller)
b. Installazione pacchetti:
sudo apt install realmd sssd sssd-tools adcli samba-common-bin oddjob oddjob-mkhomedir libnss-sss libpam-sss
c. Ricerca del dominio:
realm discover dominio.local
d. Join al dominio:
sudo realm join –user=Administrator dominio.local
e. Verifica utenti:
id administrator@dominio.local
getent passwd
- Risoluzione problemi comuni
- Errore: “Cannot contact any KDC”
→ Verificare /etc/krb5.conf, sincronizzazione orologio, e firewall. - Errore: “realm: could not join realm: DNS discovery failed”
→ Correggere i DNS verso i controller di dominio. - Autenticazione fallita su Linux:
→ Controllare PAM e SSSD.
File: /etc/sssd/sssd.conf
[sssd]
domains = dominio.local
config_file_version = 2
services = nss, pam
[domain/dominio.local]
id_provider = ad
override_homedir = /home/%u
default_shell = /bin/bash
sudo systemctl restart sssd
- Integrazione con Samba per condivisioni da Linux verso utenti AD
- Esempio di smb.conf
[global]
workgroup = DOMINIO
security = ADS
realm = DOMINIO.LOCAL
winbind use default domain = yes
winbind enum users = yes
winbind enum groups = yes
template shell = /bin/bash
[condivisione]
path = /srv/condivisione
read only = no
valid users = @DOMINIO\domain_users
sudo systemctl restart smbd nmbd winbind
Best Practice
- Sincronizzare sempre il tempo tra client Linux e i Domain Controller (DC).
- Usare DNS interno gestito da AD.
- Abilitare mkhomedir per creare automaticamente le home directory:
sudo authconfig –enablemkhomedir –update
- Verificare la presenza dei pacchetti aggiornati per realmd, sssd, samba.
- Usare Kerberos per test di autenticazione: kinit nomeutente@DOMINIO.LOCAL
Conclusione
Un dominio Active Directory è molto più di un semplice contesto amministrativo: è una struttura fondamentale per la sicurezza, la scalabilità e la gestione centralizzata di una rete aziendale. La sua corretta implementazione e l’integrazione con sistemi Linux richiede attenzione a DNS, sincronizzazione oraria, autenticazione Kerberos e configurazione di Samba e SSSD. Seguendo le best practice sopra elencate, gli amministratori possono assicurare un’infrastruttura robusta e integrata.
Per approfondire:
→ Come configurare un Domain Controller Windows Server 2022
→ Guida completa all’uso di Kerberos in ambienti misti
→ Integrazione completa SSSD e LDAP