Non so se può essere utile o no ma voluto scrivere questo how to perchè per ottenere questo risultato ho bestemmiato e ho dovuto cercare ore e ore , giorni e giorni sui vari newsgrop su samba. E poi ho dovuto bestemmiare per via del controller raid SATA ViaRAID che era supportato fino al kernel 2.4.x
Veniamo a noi:
GOAL : joinare al dominio Active Directory un server SAMBA per ottenre share , accessi e ACL basati sugli utenti di AD.
Software Utilizzato :
RedHat 9.0
SAMBA3.0.7
Kernel 2.4.25
Kerberos 5
POSIX Acl
pacchetti essenziali :
krb5-workstation
krb-lib
krb-devel
libacl
libacl-devel
libatt
libatt-devel
patch per acl per il kernel 2.4.25
Mettiamoci all'opera.
Installiamo tutti i pacchetti necessari supponendo che si parta dagli rpm che decisamente avviene più velocemente.
yum install krb5-workstation
yum install krb-lib
yum install krb-devel
yum install libacl
yum install libacl-devel
yum install libatt
yum install libatt-devel
Patchiamo il kernel per il supporto delle acl posix in modo di fare il porting dei permessi e delle acl di ntfs.
andiamo al sito http://acl.bestbits.at/download.html e scarichiamo la patch completa per il nostro kernel .
Andiamo nell dir dei sorgenti del kernel ( precedentemente scaricati ) /usr/src/linux-2.4.25
copiamo dentro la patch e la gunzippiamo
gunzip nome_della_patch.gz
ora procediamo a patchare il kernel entrando nella cartella /usr/src/linux-2.4.25 digitiamo :
patch -p1 < nome_della_patch.diff
ok non ci dovrebbero essere errori , procediamo alla compilazione del kernel :
cp /boot/config_vecchio_kernel /usr/src/linux-2.4.25/config (logicamente non 2.6.x sono incompatibili i config file )
make menuconfig
load alternate config file (gli diamo il config copiato dal boot)
Sezione FileSystem e flagghiamo EXT3 acl tutte !
make dep
make bzImage
make modules
make modules_install
mkinitrd /boot/initrd.img-2.4.25 2.4.25
cp arch/i386/boot/bzImage /boot/vmlinuz-2.4.25
cp System.map /boot/System.map-2.4.25
e configuriamo il nostro booloader preferito , nel mio caso ho configurato GRUB.
Ok ora abbiamo tutti i pacchetti a nostra disposiozione e patchato il kernel , provvediamo a ricompialare samba 3
downloadiamo samba3.src.rpm
rpm -i samba3.src.rpm
andiamo in /usr/src/redhat/SPECS/ e editiamo il file samba3.spec aggiungendo nelle opzioni di configurazione --with-acl-support
dopodiche lanciamo rpmbuild --bb samba3.spec
una volta finito troverete il pacchetto in /usr/src/redhat/RPMS/i386 e lo installiamo con il nostro rpm -Uvh samba3.rpm
se tutto è andato a posto controlliamo che samba abbia linkato le acl ldd /usr/sbin/smbd |grep acl
ok ci sono !
adesso abilitiamole sul filesystem le acl con vi /etc/fstab dopo il mount point da noi preferito per lo share aggiungiamo dopo l'opzione defaults,acl
dopodiche diamo mount /home -o remount
proviamo le nostre acl se tutto funge bene : setfacl -m u:utente_prova:rx- /home/file_di_prova
getfacl /home/file_prova
ok siamo a posto su tutto possiamo iniziare la configurazione di samba e winbind e kerberos .... ora contuno mi stanno scassando le BALLS a lavoro attendere 5 sec ....