Samba 4 come member server
Questa configurazione è per Debian 10 / Devuan Beowulf.
Configurazione di una macchina con Samba4 che sia membro di un dominio AD. Il domain controller in questo caso e` Samba, ma dovrebbe funzionare anche con un DC Windows (non ho provato).
Prerequisiti
- Samba richiede l'uso delle ACL Posix e degli attributi estesi sul file system. Occorre quindi usare ext4 (che li supporta di default) oppure abilitarli sul file system che volete usare.
- Usare NTP perche` la sincronizzazione dell'ora e` importante
- Configurare la risoluzione dei nomi:
Modificare /etc/resolv.conf in modo che punti al DNS che serve il dominio (che è lo stesso che usano i client, ovvero è il domain controller medesimo oppure può essere Dnsmasq se è stato configurato correttamente per risolvere i nomi relativi al dominio AD) e in modo che il parametro "search" sia impostato al nome del dominio AD.\
nameserver 192.168.0.1 search dominio.locale
Modificare il file /etc/hosts in modo che NON CONTENGA riferimenti all'hostname della macchina che puntino a 127.0.0.1 (o a ::1). È corretto avere "localhost" che punta a 127.0.0.1 e ::1. Il nome dell'host deve puntare all'indirizzo ip dell'interfaccia che usiamo per servire i files con Samba (che ragionevolmente sarà una sola; se ne avete più di una sinceramente non so come si possa fare). Per esempio, questo è un file hosts corretto:
# localhost 127.0.0.1 localhost ::1 localhost ip6-localhost ip6-loopback # il nome del mio server punta all' IP dell'interfaccia di rete 192.168.0.248 hostname.dominio.locale hostname
Installazione di Samba
- Installare normalmente i pacchetti di Samba "ufficiali" più alcuni pacchetti di contorno:
apt install acl attr samba samba-dsdb-modules samba-vfs-modules winbind libpam-winbind libnss-winbind libpam-krb5 krb5-config krb5-user dnsutils smbclient
- ignorare le domande relative alla config di Kerberos, che tanto dovremo rifarla dopo.
ATTENZIONE: installando libpam-winbind si autorizzano di default gli utenti di Samba ad accedere in ssh. Questo potrebbe essere molto pericoloso. Se non volete che succeda, usate il comando pam-auth-update (dopo aver installato i pacchetti) e disattivate l'opzione di usare Samba come fonte di autenticazione per PAM
Configurazione
- Fermare samba
- Assicurarsi che sia fermo. Se ci sono processi smbd, nmbd, o winbindd, killarli senza pietà.
Cancellare o rinominare il file /etc/samba/smb.conf
- Se ci sono, cancellare tutti i files tdb e ldb. Un metodo per trovarli è questo:
smbd -b | egrep "LOCKDIR|STATEDIR|CACHEDIR|PRIVATE_DIR"
Cancellare o rinominare, se c'è, il file /etc/krb5.conf