Samba e OpenLDAP: creare un controller di dominio Active Directory con Debian Wheezy: differenze tra le versioni

Da Guide@Debianizzati.Org.
Vai alla navigazione Vai alla ricerca
Riga 47: Riga 47:
127.0.0.1 localhost
127.0.0.1 localhost
127.0.1.1 server01 server01.dominio.local
127.0.1.1 server01 server01.dominio.local
</pre>
<!-- faccio notare che con quanto qui sopra kerberos non credo proprio funzioni... -->
<!-- faccio notare che con quanto qui sopra kerberos non credo proprio funzioni... -->
</pre>
Allo stesso modo:
Allo stesso modo:
<pre>
<pre>

Versione delle 21:24, 17 ago 2012

Samba

Condivisione risorse

Controller di dominio

Altro


Edit-clear-history.png Attenzione. Questa guida è da considerarsi abbandonata, per via del tempo trascorso dall'ultima verifica.

Potrà essere resa obsoleta, previa segnalazione sul forum, se nessuno si propone per l'adozione.


Debian-swirl.png Versioni Compatibili

Debian 7 "wheezy"

Introduzione

Guide simili per precedenti versioni di Debian o altre distribuzioni linux:

Vedremo questa volta come installare un server basato su Debian Wheezy e Samba 4 affinché funga da Primary Domain Controller di una rete Windows. La nuova release di Samba 4 ha apportato moltissime modifiche:

  • Samba è ora in grado di comportarsi come un Domain Controller Active Directory. E' quindi possibile utilizzare i tool di gestione presenti nei server Windows 2000/2003, gestire le group policies per i client Windows, aggiungere indifferentemente ulteriori server Windows e/o Debian all'infrastruttura di rete
  • non è più necessario utilizzare come backend un database LDAP, poichè Samba 4 integra un proprio database LDAP modificato per avere compatibilità verso i database LDAP di Microsoft Active Directory

Lo stesso server Samba4 verrà poi utilizzato anche per la gestione in contemporanea degli utenti Unix, in modo da avere un controllo unico e centralizzato sia sugli utenti Windows sia sugli utenti Linux.
Consiglio vivamente di prepararsi una buona tazza di caffé e di armarsi di pazienza e di molta attenzione, dato che un errore di battitura in qualche file di configurazione può mandare in rovina l'intero lavoro: poichè che i files da modificare saranno molti, di certo risulterebbe molto difficile e molto lungo andare a caccia di eventuali errori.

Sistema installato e prerequisiti

Il presente HOWTO è stato realizzato utilizzando un sistema Debian 7.0 Wheezy con tutti gli aggiornamenti di sicurezza ufficiali. La configurazione iniziale del sistema prevede un'installazione base Debian net install con in più:

Non proseguite senza avere questi servizi già attivi e funzionanti. Si suppone per comodità che tutti i servizi (LDAP, LAMP, DNS) risiedano sullo stesso server.
Durante tutto il processo si presuppone di agire come utente root.


Parametri di rete utilizzati

In tutta la guida saranno utilizzati i seguenti parametri per la configurazione della rete:

  • Nome del server: server01
  • Nome del dominio: dominio.local
  • Nome NETBIOS del dominio: DOMINIO
  • Classe IP: 10.0.0.0 / 255.255.255.0
  • IP Server: 10.0.0.254
  • Password di root: mia_password
  • Password Administrator del dominio: mia_password
  • Password admin di LDAP: mia_password

Questi parametri vanno ovviamente adattati alle vostre esigenze.

Modifica dell'hostname del server

Incominciamo sistemando l'hostname per il nostro server di dominio. Apriamo il file:

nano /etc/hosts

e inseriamo il FQDN del server:

127.0.0.1 localhost
127.0.1.1 server01 server01.dominio.local

Allo stesso modo:

nano /etc/hostname
server01.dominio.local 

Infine controlliamo che il file:

nano /etc/resolv.conf

contenga solo le seguenti linee:

search dominio.local
nameserver 10.0.0.254

Installazione di Samba

L'installazione di Samba va effettuata in questo momento perchè insieme ai pacchetti stessi di Samba saranno installate anche alcune utility che adopereremo nei paragrafi successivi.

# apt-get install samba4 samba4-clients samba4-common-bin samba4-testsuite resolvconf cifs-utils

Verranno installati anche una serie di pacchetti relativi a Kerberos, poichè Samba4 utilizza di default lo stesso sistema di autenticazione cifrata utilizzato dai server di dominio Windows.
Durante l'installazione di Samba4 vedrete che il Debian Installer provvederà autonomamente a generare e configurare un albero LDAP, utilizzando i parametri di dominio specificati nel file /etc/hostname che abbiamo modificato in precedenza.

Verificate l'output dell'installer; ci troverete:

See /var/lib/samba/private/named.conf for an example configuration include file for BIND
and /var/lib/samba/private/named.txt for further documentation required for secure DNS updates
Setting up sam.ldb rootDSE marking as synchronized
Fixing provision GUIDs
A Kerberos configuration suitable for Samba 4 has been generated at /var/lib/samba/private/krb5.conf
Once the above files are installed, your Samba4 server will be ready to use

segno che dobbiamo fare ancora qualcosa...
Poco più sotto troverete anche un riassunto della configurazione effettuata automaticamente:

Admin password:        5JLd_,7tvwP;z&)d5<$+
Server Role:           active directory domain controller
Hostname:              server01
NetBIOS Domain:        WORKGROUP
DNS Domain:            dominio.local
DOMAIN SID:            S-1-5-21-2167877427-1748325126-3135181334

Come potete vedere, ci sono delle cose da correggere.

Configurazione del DNS Server BIND

Incominciamo modificando la configurazione di Bind, secondo le indicazioni del file /var/lib/samba/private/named.txt:

# nano /etc/bind/named.conf.local

e aggiungendo alla fine del file la seguente sezione:

# Configuro le Zone dinamiche (DLZ) per lo schema AD 
# Occorre decommentare solo la configurazione relativa
# alla versione di Bind utilizzata

dlz "AD DNS Zone" {
    # Per BIND 9.8.0
    database "dlopen /usr/lib/x86_64-linux-gnu/samba//bind9/dlz_bind9.so";

    # Per BIND 9.9.0
    # database "dlopen /usr/lib/x86_64-linux-gnu/samba//bind9/dlz_bind9_9.so";
};

Poi aggiungiamo le seguenti righe al file /etc/bind/named.conf.options appena sotto alla definizione dei forwarders:

# nano /etc/bind/named.conf.options
        // Abilito l'autenticazione Samba
        tkey-gssapi-keytab "/var/lib/samba/private/dns.keytab";

Quindi impostiamo i permessi corretti per la chiave di autenticazione Samba:

# chgrp bind /var/lib/samba/private/dns.keytab
# chmod g+r /var/lib/samba/private/dns.keytab

Se per caso abbiamo configurato anche SELinux, occorre informarlo dei cambiamenti:

# chcon -t named_conf_t /var/lib/samba/private/dns.keytab

Infine riavviamo Bind:

# /etc/init.d/bind9 restart

Configurazione di Samba

A questo punto siamo pronti per configurare Samba. Prima di tutto effettuiamo una copia del precedente file:

# mv /etc/samba/smb.conf /etc/samba/smb.conf.original

Quindi lanciamo il nuovo tool per effettuare il provision di Samba, cioè la configurazione di Samba come Domain Controller in una nuova foresta di domini Active Directory:

# /usr/share/samba/setup/provision --realm=dominio.local --domain=DOMINIO --adminpass=mia_password --server-role=dc

Infine riavviamo Samba4 con:

/etc/init.d/samba4 restart