E' stata aggiunta anche la possibilità di utilizzare i roaming profiles e script di logon.
Nel caso in cui si voglia creare un dominio windows con samba, ma utilizzando ldap, la procedura da me testata step by step è la seguente (consiglio questa soluzione):
Parte 1
http://alessandromazzanti.blogspot.com/2011/03/parte-3-di-6-samba-installare-server.html
Parte 2
http://alessandromazzanti.blogspot.com/2011/03/parte-4-di-6-samba-configurare-ldap.html
Parte 3
http://alessandromazzanti.blogspot.com/2011/03/parte-5-di-6-samba-settaggio-di-samba.html
Parte 4
http://alessandromazzanti.blogspot.com/2011/04/dominio-windows-con-samba-66-aggiunta.html
1) yum install samba samba-common samba-client2) chkconfig smb on
3) system-config-network-tui
impostando gli ip, ed altre info. Si è assunto che il nome del server è server014) Modifichiamo il file smb.conf come descritto di seguito:
5) vim /etc/samba/smb.conf
----------------------------------------INIZIO SMB.CONF----------------------------------[GLOBAL]
workgroup = intranet - E' il nome del Dominio e/o del Workgroup
netbios name = server01 - E' il nome del server Samba
server string
= Samba PDC - Versione %v
- La descrizione del server
security =
user
- Impone di autenticare gli utenti localmente. E' necessario su un PDC Sambasmb passwd file = /etc/samba/smbpasswd
encrypt passwords = yes
-
Cripta login e password in fase di autenticazione: obbligatorio su un PDC e necessario per interagire senza problemi con client Windows NT o successivilog file =
/var/log/samba/log.%m -
Definisce la posizione dei log e indica di creare log diversi on i nomi delle rispettive macchine client max log size = 100
log level = 1 - imposta il livello di debug
os level = 255 - Imposta il valore con cui partecipare alle elezioni per il Master Browser
preferred master = yes - Forza una elezione quando si avvia e vi partecipa con maggiori possibilità di successo
local master =
yes
- Fa partecipare Samba alle elezioni per il Local Master Browserdomain master =
yes
- La riga che indica a Samba di operare com PDCwins support = yes
domain logons =
yes
- Permette ai client Windows di loggarsi sul dominio autenticandosi con il server Sambahosts allow =
127.0.0.1 192.168.137.0/255.255.255.0 -
Permette l'accesso solo dal localhost e dalla rete 192.168.137.0/24add machine script = /usr/sbin/useradd -d /dev/null -g machines -s /bin/false -M %u - Aggiunge automaticamente al sistema l'account di una nuova macchina che entra nel dominio)
logon drive = H: - Crea l'unità di rete H: al login su client Windows
logon script = logon.bat - Specifica quale script eseguire sul client ad ogni login. Lo script viene cercato nella directory definita nella condivisione [netlogon]
logon path = \\%S\profiles\%U se non ci sono dns locali nella lan è necessario sostituire server1 con l'IP - Definisce la posizione della directory profiles (per client WinNT/2k/XP) in \\nomeserver\profiles\nomeutente
logon home = \\%S\%U
add user script = /usr/sbin/useradd -m '%u' -g users -G users - Scriptper aggiungere utente
delete user script = /usr/sbin/userdel -r %u - script per rimuovere utente
add group script = /usr/sbin/groupadd %g - Script per aggiungere gruppo
delete group script = /usr/sbin/groupdel %g - Script per cancellare gruppo
add user to group script = /usr/sbin/usermod -G %g %u
idmap uid = 15000-20000
idmap gid = 15000-20000
template shell = /bin/bash
passwd program = /usr/bin/passwd %u
passwd chat = *Enter\snew\sUNIX\spassword:* %n\n *Retype\snew\sUNIX\spassword:* %n\n *password\supdated\ssuccessfully* .
passwd chat debug = yes
unix password sync = yes
profile acls = yes
[HOMES]
Share speciale, che definisce la posizione delle home directory
valid users = %S, @supervisore - E' valido solo l'utente stesso ed il gruppo supervisore
comment = Home Directory -
per ogni User
Descrizione della condivisione
browseable = no
- E' bene non rendere pubblicamente visibile le home dei singoli utenti
writeable = yes
- Ogni utente deve poter scrivere nella sua home
[NETLOGON]
Condivisione speciale che contiene gli script che vengono eseguiti sui client Windows al login sul dominio. Devono essere eseguibili su Windows e possono essere utilizzati per varie operazione di amministrazione centralizzata (backup di dati locali, aggiornamento programmi o antivirus, mappatura di nuove condivisioni di rete ecc.)
comment = Network Logon Service
path = /home/samba/netlogon - La directory sul server in cui sono contenuti, in sottodirectory con nome uguale al login dell'utente, gli script definiti con la direttiva "logon script"
admin users = @supervisore
valid users = %U
read only = yes - Questi script devono essere accessibili solo in lettura...
guest ok = yes
share modes = no
browseable = no - Questa è una condivisione di servizio che è inutile mostrare agli altri utenti
available = yes
write list =
@
supervisore... tranne agli utenti del gruppo (@) supervisore [PROFILES]
Share speciale dove vengono scritti i file di profilo per i gli utenti roaming. Ad ogni login e logout il suo contenuto viene sincronizzato con la cartella dei documenti sul computer locale (C:/Documenti/NomeUtente.dominio)
comment = User profiles
path = /home/samba/profiles - La directory locale sul server Samba dove sono salvati i profili. Qui vengono, automaticamente, create delle sottodirectroy con i nomi degli utenti
valid users = %U - Solo l'utente vi può accedere
create mask = 0600 - La maschera con cui vengono creati i file: Pieni permessi all'owner, nessun permesso per gli altri utenti
security mask = 0600
directory mask = 0770 - La maschera con cui vengono create le directory: per l'owner devono essere anche eseguibili (sfogliabili)
directory security mask = 0770
read only = no - Il profilo non è in sola lettura
writeable
= yes
- I profili sono sincronizzati con il client al login e al logout e devono essere scrivibili
browseable = no - Come per le home, anche i profili non devono essere visibili agli altri utenti
available = yes
-------------------------------------FINE FILE SMB.CONF-----------------------------------------
6) A questo punto è necessario creare gli utenti, gruppi e le cartelle per il domain logon e profili.
Vanno creati gli utenti di dominio:
useradd utente
groupadd gruppo_utente
7)
per associare il gruppo creato all'utente si utilizza il seguente comando
usermod -G gruppo_utente utente
8)
E' necessario aggiungere il gruppo supervisore
groupadd supervisore
Si crea il gruppo supervisore, composto da utenti che possono editare gli script di logon. Considerare che questi script sono particolarmente importanti, in termini di sicurezza, visto che vengono eseguiti sui client Window.
9) Vanno create le cartelle:
mkdir -p /home/samba/netlogon
mkdir /home/samba/profiles
chown -R root:users /home/samba/
chmod 777 /home/samba/
chmod -m 0755 /home/samba/netlogon/
chmod 770 /home/samba/profiles/
10) Se uno volesse aggiungere altre shares, questa è la procedura per creare una share accessibile da tutti gli utenti. Prima di tutto è necessario creare la directory della share che vogliamo condividere.
Dopo è necessario cambiare il proprietario, gruppo e permessi:
mkdir -p /home/shares/allusers/
chown -R root:users /home/shares/allusers/
chmod -R 775 /home/shares/allusers/
vim /etc/smb.conf
----------------------------------------------------------------------------------------------------------------
[SHARES]
comment = Share for all users (or something other)
path = /home/shares/allusers/ (The path to the directory that you created at step 6.1)
valid users = @users @supervisore
read only = No (if the users should be able to write to this share)
create mask = 0660
security mask = 0660
directory mask = 0771
directory security mask = 0771
browseable= Yes
----------------------------------------------------------------------------------------------------------------
A questo punto è necessario aggiungere il pc al dominio
12) Windows 2000
Le procedure sono uguali a quelle per Windows NT tranne che i settaggi di rete sono trovati sotto Pannello di Controllo à Sistema à Identificazione Rete (oppure, sul Desktop, cliccare col tasto destro del mouse sull'icona Risorse del Computer, selezionare Proprietà, cliccare sulla tab Identificazione Rete e sul tasto Proprietà)
- Aprire l'editor delle policy di Sicurezza Locale
(Start à Pannello di controlloStrumenti di Aministrazione à Criteri di protezione locali à Criteri locali à opzioni di protezione)
(Start à Pannello di controlloStrumenti di Aministrazione à Criteri di protezione locali à Criteri locali à opzioni di protezione)
- Disabilitare la voce "Domain member: Digitally encrypt or sign secure channel (always)" (Membro di dominio: aggiunta crittografia o firma digitale ai dati del canale protetto (sempre)
- Disabilitare la voce "Domain member: Disable machine account password changes" (Controller di dominio: rifiuta cambio password account computer)
- Disabilitare la voce "Domain member: Require strong (Windows 2000 or later) session key" (Membro di dominio: richiesta chiave di sessione avanzata (Windows 2000 o versioni successive) )
- Scaricare https://dev.mobileread.com/trac/iliados/browser/upstream/samba-3.0.20/docs/registry/WinXP_SignOrSeal.reg?rev=10 la patch per il registro WinXP_SignOrSeal. Per applicarla cliccare due volte sul file .reg e rispondere Si alle domande
- A questo punto ci si può unire al dominio come su Windows NT/2000: Tasto destro su Risorse del Computer, selezionare Proprietà, Nome del Computer e tasto Modifica uppure cliccare su Identificazione di Rete ed eseguire il Wizard.
APPENDICE - comandi opzionali
add machine script
= /usr/sbin/useradd -d /dev/null -g machines -s /bin/false -M %u
(Solo su Samba 3) Aggiunge automaticamente al sistema l'account di una nuova macchina che entra nel dominio)
passwd -l nomeNetBios$
Viene messo un lock sulla password, in modo da lasciarla nulla e non renderla modificabile se non da root
smbpasswd -a -m nomeNetBios
Si crea un nuovo computer account per /etc/samba/smbpasswd e si imposta la relativa password. L'opzione -a permette di crearlo, se non esiste, l'opzione -m indica che si tratta di un machine account, il nome NetBios della macchina da aggiungere NON va seguito da $, in questo caso, in quando questo carattere viene aggiunto automaticamente. Non è necessario ricordare la password inserita in quanto viene gestita direttamente fra PDC e client del dominio)