Configurazione Samba come Active Directory

Installazione, configurazione e uso di Ubuntu come server: web, ftp, mail, news, proxy, dns e altro.
Genymus
Prode Principiante
Messaggi: 49
Iscrizione: sabato 9 maggio 2009, 10:52

Re: Configurazione Samba come Active Directory

Messaggio da Genymus »

Salve,
a quanto pare, leggendo su alcuni forum, non sono l'unico ad avere questo tipo di problema, che semplicemente bisogna risolvere per vie traverse.
Sembrerebbe che, sebbene l'account faccia parte del gruppo administrators, esso non venga riconosciuto come tale sulle macchine di dominio.
Per dare diritti amministrativi si dovrebbe aggiungere l'utente al gruppo administrators locale manualmente.

Ora, tramite il comando:

Codice: Seleziona tutto

net localgroup "group" "username" /add
(sostituendo "group" con il gruppo e "username" con l'username dell'utente)
è possibile aggiungere l'utente al gruppo richiesto, e elevarlo quindi ad amministratore.
Volendo, posso quindi inserire il comando dentro il logon script e elevare l'utente ad ogni accesso su ogni macchina

Quello che ancora non riesco a capire, è se l'effetto del comando è temporaneo e, se non lo fosse, renderlo tale.
Ipotizzo uno scenario in cui un utente debba diventare amministratore solo per un certo periodo:
metto il comando nello script di logon, ed in qualunque computer lui si logghi, diventerà amministratore permanente.
Come farò una volta che questo utente perderà privilegi amministrativi sulle macchine?

C'è quindi un modo per elevare temporaneamente (solo per quella sessione) l'utente ad amministratore?
Ho già tentato l'opzione dello script di logoff che lo toglie dal gruppo alla disconnessione, ma se saltasse la corrente, mi ritroverei punto e a capo, inoltre su xp, le policy del dominio non funzionano.

Grazie
Genymus
Prode Principiante
Messaggi: 49
Iscrizione: sabato 9 maggio 2009, 10:52

Re: Configurazione Samba come Active Directory

Messaggio da Genymus »

Nessuno mi può aiutare?
Fieraf, Marco2189 dove siete?
Genymus
Prode Principiante
Messaggi: 49
Iscrizione: sabato 9 maggio 2009, 10:52

Re: Configurazione Samba come Active Directory

Messaggio da Genymus »

Ho finalmente risolto il problema...
non era il group mapping.

Semplicemente, la microsoft non importa i dati relativi agli utenti appartenenti a un gruppo di dominio nel gruppo locale.
In pratica, se un gruppo è sia nel dominio che in locale, windows carica il gruppo locale e non aggiunge gli utenti remoti.
Quindi inserire l'utente nel gruppo Administrators di dominio non serve a nulla.
Ma c'è una soluzione: creare una policy che all'avvio aggiunga l'utente (o, ancora meglio, un gruppo) al gruppo Administrators locale.

Questo si può fare seguendo questa guida.
Managing local groups on domain members via GPO restricted groups
Ho testato il metodo su Windows 7 e su XP.

Funziona su 7 ma non su XP, che a quanto pare non vuole saperne di caricare le GPO.

C'è un modo per forzagliele?
Ho già provato con

Codice: Seleziona tutto

gpupdate /force
ma non vuole applicare le policy.

Come fare?

Ho un'altra domanda:
qualcuno mi può spiegare come e quali permessi dare alle condivisioni?

ho 5 condivisioni principali:
  • Netlogon
    Home
    Sysvol
    Docenti
    System
Netlogon: contiene solo gli script di accesso, voglio che sia leggibile da tutti gli utenti autenticati, ma non modificabile da nessuno
Home: contiene tutte le directory personali degli utenti, voglio che sia leggibile e scrivibile solo dall'utente interessato. Naturalmente, cambia da utente ad utente, anche se la condivisione mantiene sempre il nome Home.
Sysvol: contiene le GPO... ho imparato che di questa cartella non bisogna assolutamente toccare i permessi.
Docenti: contiene directories condivise tra tutti i docenti (utenti del gruppo docenti) e deve essere scrivibile e leggibile solo dagli appartenenti del gruppo docenti
System: è una directory che contiene alcuni programmi utili, deve essere leggibile da tutti gli utenti autenticati, ma modificabile solo dagli amministratori di dominio.

Vorrei che mi spiegaste chi devo mettere come utente principale e gruppo principale (chown) e che permessi dare con chmod.
Immagino che per permettere o negare l'accesso la scrittura e la lettura agli utenti bisogni dare le acl, potete scrivermi anche in questo caso come devo impostarle?
Ci sarà qualcosa da modificare anche in smb.conf, potete descrivermi cosa? valid users?

Spero di avere risposta a tutte le mie domande.

Grazie
Avatar utente
giulux
Amministratore
Amministratore
Messaggi: 25426
Iscrizione: domenica 10 gennaio 2010, 12:17
Desktop: ubuntu 18.04
Distribuzione: Ubuntu 18.04.3 LTS x86_64
Sesso: Maschile
Località: Roma

Re: Configurazione Samba come Active Directory

Messaggio da giulux »

Se non hai più problemi modifica il titolo del primo post mettendoci davanti [Risolto].

Se vuoi puoi installare questo script che aggiunge un pulsante per mettere [Risolto] con un solo click.
Ciao.
"Non è una segno di buona salute l'essere ben adattato ad una società malata". (Jiddu Krishnarmurti)
Genymus
Prode Principiante
Messaggi: 49
Iscrizione: sabato 9 maggio 2009, 10:52

Re: Configurazione Samba come Active Directory

Messaggio da Genymus »

giulux [url=http://forum.ubuntu-it.org/viewtopic.php?p=4884805#p4884805][img]http://forum.ubuntu-it.org/images/icons/icona-cita.gif[/img][/url] ha scritto:Se non hai più problemi modifica il titolo del primo post mettendoci davanti [Risolto].

Se vuoi puoi installare questo script che aggiunge un pulsante per mettere [Risolto] con un solo click.
Ciao.
Salve, mi piacerebbe aver risolto ma, quando ho aperto il thread, ho inserito un titolo generico, per cui pogno nuove domande quasi ad ogni mio post.
In effetti un problema lo ho parzialmente risolto, ma non del tutto.
Se legge il mio post si accorgerà inoltre che ho posto altre domande.

Grazie comunque dell'avvertimento, sarà mia cura mettere risolto quando potrò finalmente chiudere il thread.

Cordialmente
Genymus
Genymus
Prode Principiante
Messaggi: 49
Iscrizione: sabato 9 maggio 2009, 10:52

Re: Configurazione Samba come Active Directory

Messaggio da Genymus »

Allora, riguardo il problema dell'applicazione dell gpo su Windows Xp, a quanto pare, non era un problema mio, ma di compatibilità tra Windows Server 2008 (samba 4 in questo caso) e Windows Xp / Server 2003.
Per risolvere basta applicare questa patch di Microsoft:
Group Policy Client Side Extensions (CSE) - KB943729

Per risolvere ho letto questa guida.

Perfetto... rimane da risolvere il problema dei permessi di due post fa.

Grazie a chiunque mi aiuti.

Genymus
ziokernel
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 258
Iscrizione: martedì 6 maggio 2008, 19:35

Re: Configurazione Samba come Active Directory

Messaggio da ziokernel »

interessante @Genymus, non è che puoi fare una miniguida su come creare il tutto da 0?
mi saresti di aiutissimo!
Genymus
Prode Principiante
Messaggi: 49
Iscrizione: sabato 9 maggio 2009, 10:52

Re: Configurazione Samba come Active Directory

Messaggio da Genymus »

Ciao,
Allora... sto già lavorando ad una documentazione sul server...
volevo finire di sistemare tutti i problemi, poi pensavo di montare una macchina virtuale e, seguendo la guida passo per passo, riconfigurare il tutto su Ubuntu 16.04.
Se funziona, la posterò.

PS: per le home, non uso il sistema tradizionale (condivisione homes), perchè, per gestire lo spazio massimo occupato dall'utente, non potendo usare quota, ho optato per la creazione di loop device.

Genymus
ziokernel
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 258
Iscrizione: martedì 6 maggio 2008, 19:35

Re: Configurazione Samba come Active Directory

Messaggio da ziokernel »

[quote="Genymus
PS: per le home, non uso il sistema tradizionale (condivisione homes), perchè, per gestire lo spazio massimo occupato dall'utente, non potendo usare quota, ho optato per la creazione di loop device.
Genymus[/quote]
interessante, pubblichi anche la macchina virtuale come immagine?
Genymus
Prode Principiante
Messaggi: 49
Iscrizione: sabato 9 maggio 2009, 10:52

Re: Configurazione Samba come Active Directory

Messaggio da Genymus »

@Ziokernel
Hem... non ho capito molto bene la domanda...
vuoi che carico l'intera macchina virtuale già pronta (impossibile con la mia connessione, ci impiegherei giorni interi), o intendevi che spigassi il metodo che ho usato per implementare i loop device?

alcune note:
1. le home non le ho usate perché, oltre a non capire perché potessi accedere solo se l'utente fosse stato del gruppo domain admins, volevo essere sicuro che agli utenti windows venisse mostrata la vera quantità di spazio disponibile e non quella intera del disco (esempio... ho assegnato ad alcubi utenti 1gb ed ad altri 500mb)
2. c'è un problema con il mio sistema dei loop devices: se fosse necessario aumentare lo spazio disco per un utente è necessario creare il nuovo loop, montarlo (dopo averlo formattato) e copiarci dentro tutti i dati...
3. qualcuno potrebbe chiedersi come ma abbia optato per i loop device al posto del più semplice da gestire quota, a questi rispondo esponendo la mia situazione:
il server a cui sto lavorando andrà in una scuola, dove ogni utente avrà una home, ed ogni gruppo avrà una condivisione. inoltre, se alcuni docenti hanno bisogno di spazio aggiuntivo su una condivisione separata per fare, ad esempio, teatro, verrebbe creata la condivisione teatro.
Ora, come fare per gestire la quota dis pazio dell'utente considerando che il sistema quota, non conta la condivisione, ma tutto lo spaxio occupato dall'utente?
nelle condivisioni mi troverei che, se il suddetto, ha già occupato la sua quota di spazio, non potrebbe più scrivere...
all'inizio avevo optato per altre idee, tipo quella di uno script che mi teneva di conto lo spazio occupato dall'utente, ma poi sorgeva il problema di come fare per impedigli di occupare ulteriore spazio (mettere la condivisione in sola lettura non andava bene, perché dopo non poteva cancellare i file).
pensavo di partizionare logicamente il disco con più partizioni, ma c'era il problema di come ingrandirle se necessario.
ero arrivato fino al punto di lensare di modificare samba per permettermi di fare quello ch volevo...
alla fine su un forum uno parlava dei loop device ed allora ho pensato fossero la scelta adatta a me, un po' macchinosi da usare ma potentissimi per quanto riguarda la gestione dello spazio (anche perché prealloca lo spazio occupato dal loop per cui non devo neppure preoccuparmi di eventuali problematiche di disco troppo pieno).

in ogni caso, sto aspettando l'intervento di fieraf per aiutarmi a risolvere il problema dei permessi.

saluti
Genymus
ziokernel
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 258
Iscrizione: martedì 6 maggio 2008, 19:35

Re: Configurazione Samba come Active Directory

Messaggio da ziokernel »

@Genymus
mi interessa il procedimento perchè devo fare una cosa identica per una associazione no-profit (quindi lo faccio per volontariato a gratis, loro poi sono degli angeli)
1) hai messo una ubuntu server o una 16.04 lts 64bit normale?
2) per installare samba hai seguito qualche guida?

aspettero' le guide preziose..
Pike
Rampante Reduce
Rampante Reduce
Messaggi: 5460
Iscrizione: domenica 20 gennaio 2008, 1:13
Desktop: Kubuntu
Distribuzione: 20.04 x64
Contatti:

Re: Configurazione Samba come Active Directory

Messaggio da Pike »

Crea un gruppo di utenti, che saranno amministratori del PC.
Spiega a Samba che deve aggiungere al gruppo Nomepc\Administrators il gruppo di dominio
inserisci gli utenti nel gruppo.
Sono colui che fa cose che non servono...
Secondo Principio di Dilbert, di Scott Adams. "Si parte dalla certezza che siamo tutti idioti". Ed alcuni su questo mi ab-battono alla grande.
Come certificato dalla moderazione, incivile e maleducato. You have been warned.
Genymus
Prode Principiante
Messaggi: 49
Iscrizione: sabato 9 maggio 2009, 10:52

Re: Configurazione Samba come Active Directory

Messaggio da Genymus »

ziokernel [url=http://forum.ubuntu-it.org/viewtopic.php?p=4886194#p4886194][img]http://forum.ubuntu-it.org/images/icons/icona-cita.gif[/img][/url] ha scritto:@Genymus
mi interessa il procedimento perchè devo fare una cosa identica per una associazione no-profit (quindi lo faccio per volontariato a gratis, loro poi sono degli angeli)
1) hai messo una ubuntu server o una 16.04 lts 64bit normale?
2) per installare samba hai seguito qualche guida?

aspettero' le guide preziose..
Ciao, rispondo alle tue domande:
1) Ho usato Ubuntu Server 14.04 LTS per il server di test, ma il server ufficiale sarà con Ubuntu Server 16.04 LTS. Tutto a 64 bit.
2) Si, ne ho seguite tantissime, ma visto che continuavo ad avere problemi, ho chiesto su questo forum e l'utente fieraf mi ha aiutato molto: uno dei primi post che ho fatto è questo http://forum.ubuntu-it.org/viewtopic.php?f=28&t=609959 ed in uno di questi post, fieraf mi ha segnalato questa utilissima guida http://blogging.dragon.org.uk/samba4-ad-dc-on-ubuntu-14-04/.
3) posto quì sotto una parte della mia guida che potrebbe interessarti.
4) Sono felice di trovare qualcuno che, come me, fa queste cose per volontariato... anche io sono volontario nella scuola dove "lavoro" (a gratis) come tecnico... dove, per semplificarmi il lavoro, ho deciso di implementare un server.
Pike ha scritto:Crea un gruppo di utenti, che saranno amministratori del PC.
Spiega a Samba che deve aggiungere al gruppo Nomepc\Administrators il gruppo di dominio
inserisci gli utenti nel gruppo.
Ti ringrazio di aver risposto Pike, ma (fortunatamente) ho già risolto questo problema alcuni giorni fa risolvendo, per altro, il discorso delle policy non caricate da windows xp.
Genymus
Prode Principiante
Messaggi: 49
Iscrizione: sabato 9 maggio 2009, 10:52

Re: Configurazione Samba come Active Directory

Messaggio da Genymus »

A richiesta di Ziokernel, posto la parte di guida che riguarda samba 4 e la sua configurazione per funzionare come Active Directory...
NOTA: ATTENZIONE! la guida è incompleta, non è completamente testata (potrei aver eseguito alcune modifiche di cui non ho tenuto traccia) e potrebbe non funzionare!

Appunti per capire gli esempi:

Codice: Seleziona tutto

Hostname Server: server
IP: 192.168.1.3
Rete: 192.168.1.0
Netmask: 255.255.255.0

Dominio scelto: sec.nervesa
WORKGROUP: SECNERVESA
REALMS: SEC.NERVESA
1) Installare Bind9 (Server DNS):

Codice: Seleziona tutto

# apt-get install bind9
2) Installare ACL e ATTR:

Codice: Seleziona tutto

# apt-get install acl attr
3) Attivare automaticamente le ACL e gli ATTR all'avvio del mount delle partizioni:

Codice: Seleziona tutto

# nano /etc/fstab
Aggiungere "user_xattr,acl,barrier=1" (senza virgolette) alle partizioni da montare con le opzioni specificate:

Esempio:

Codice: Seleziona tutto

# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
# / was on /dev/sda1 during installation
UUID=1a42c8d4-7e51-411e-ab30-f61eabbc6920 /               ext4    user_xattr,acl,barrier=1,errors=remount-ro 0       1
# /data was on /dev/sda5 during installation
UUID=3ca0a340-6155-4834-8004-e0770d3b0018 /data           ext4    defaults        0       2
# swap was on /dev/sda2 during installation
UUID=4a71f2b6-b1d5-4795-8d22-04c7e142f120 none            swap    sw              0       0
/dev/fd0        /media/floppy0  auto    rw,user,noauto,exec,utf8 0       0
4) Installare SAMBA, KERBEROS e dipendenze:

Codice: Seleziona tutto

# apt-get install samba smbclient  build-essential libacl1-dev libattr1-dev libblkid-dev libgnutls-dev libreadline-dev python-dev libpam0g-dev python-dnspython gdb pkg-config libpopt-dev libldap2-dev dnsutils libbsd-dev krb5-user docbook-xsl libcups2-dev ldb-tools winbind
verrà chiesto di configurare il realm di KERBEROS:

Esempio:

Codice: Seleziona tutto

Realm predefinito: SEC.NERVESA
Server Kerberos del Proprio realm: server
Server Amministrativo per il realm Kerberos: server
5) Configurare SAMBA:
Eseguire backup configurazione Samba:

Codice: Seleziona tutto

# mv /etc/samba/smb.conf /etc/samba/smb.conf.bak
Effettuare il provisioning:

Codice: Seleziona tutto

# samba-tool domain provision --use-rfc2307 --interactive
l'opzione --use-rfc2307, attiva l'active directory per essere compatibile con XP e windows server 2003, inoltre imposto l'active directory come fosse un windows server 2008

Vengono richiesti alcuni dati (interactive):

Codice: Seleziona tutto

1.	(Realm) SEC.NERVESA
2.	(Domain [NETBIOS]) SECNERVESA
3.	(Server Role) dc
4.	(DNS Backend) BIND9_DLZ
5.	(Administrator Password) abc123@ABC ###### Deve rispettare i criteri di protezione
Modificare il file smb.conf in questo modo (cambiando ovviamente con i propri paramenti, alcuni sono già impostati):

Codice: Seleziona tutto

# Global parameters
#logon script = %U.bat
[global]
	server string = Server Secondaria Nervesa	
	workgroup = SECNERVESA
	realm = SEC.NERVESA
	netbios name = SERVER
	server role = active directory domain controller
	server services = s3fs, rpc, nbt, wrepl, ldap, cldap, kdc, drepl, winbindd, ntp_signd, kcc, dnsupdate
	idmap_ldb:use rfc2307 = yes
	allow dns updates = nonsecure and secure
	idmap config *:backend = tdb
	idmap config *:range = 2000-9999
	idmap config SECNERVESA:backend = ad
	idmap config SECNERVESA:schema_mode = rfc2307
	idmap config SECNERVESA:range = 10000-29999
	bind interfaces only = True
	interfaces = lo eth0
	log file = /var/log/samba.log
	log level = 1
	winbind nss info = rfc2307
	winbind use default domain = true
	vfs objects = acl_xattr
	map acl inherit = yes
	store dos attributes = yes
	load printers = No
	printcap name = /dev/null
	disable spoolss = yes
	domain logons = yes

[netlogon]
	path = /data/shares/netlogon
	read only = yes
	public = no
	browsable = yes

[sysvol]
	path = /data/shares/sysvol
	read only = No
	browseable = yes
6) Configurare KERBEROS:
Eseguire un backup del file krb5.conf

Codice: Seleziona tutto

# cp /etc/krb5.conf /etc/krb5.bak
Modificare il file krb5.conf in questo modo (cambiando ovviamente con i propri paramenti, alcuni sono già impostati):

Codice: Seleziona tutto

# nano /etc/krb5.conf

Codice: Seleziona tutto

[libdefaults]
        default_realm = SEC.NERVESA
        dns_lookup_realm = false
        dns_lookup_kdc = true

[realms]
 SEC.NERVESA= {
        kdc = server.sec.nervesa
        admin_server = server.sec.nervesa
}
Io ho solo questo dentro il mio krb5.conf, ma voi potete tenere tutta la pappardella (inutile) che c'è già dentro.

7. Configurare BIND9:
Modificare il file named.conf.options di Bind in questo modo (cambiando ovviamente con i propri paramenti, alcuni sono già impostati):

Codice: Seleziona tutto

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

Codice: Seleziona tutto

options {
        directory "/var/cache/bind";

        allow-query { 127.0.0.1; 192.168.1.0/24; } ;
        allow-transfer { none; } ;
        allow-recursion { 127.0.0.1; 192.168.1.0/24; } ;

        forwarders {
                192.168.1.1;
                8.8.8.8;
        };

        dnssec-enable no;
        listen-on-v6 { any; };
        auth-nxdomain yes;

        tkey-gssapi-keytab "/var/lib/samba/private/dns.keytab";
};
Modificare il file named.conf in questo modo:

Codice: Seleziona tutto

# nano /var/lib/samba/private/named.conf

Codice: Seleziona tutto

# This DNS configuration is for BIND 9.8.0 or later with dlz_dlopen support.
#
# This file should be included in your main BIND configuration file
#
# For example with
# include "/var/lib/samba/private/named.conf";

#
# This configures dynamically loadable zones (DLZ) from AD schema
# Uncomment only single database line, depending on your BIND version
#
dlz "AD DNS Zone" {
    # For BIND 9.8.x
    # database "dlopen /usr/lib/x86_64-linux-gnu/samba/bind9/dlz_bind9.so";

    # For BIND 9.9.x
     database "dlopen /usr/lib/x86_64-linux-gnu/samba/bind9/dlz_bind9_9.so";

    # For BIND 9.10.x
    # database "dlopen /usr/lib/x86_64-linux-gnu/samba/bind9/dlz_bind9_10.so";
};
voi dovete verificare la versione di Bind9 che avete installato nel sistema e decommentare la riga adatta... io avevo la versione bind 9.9

Modificare il file named.conf (di bind9):

Codice: Seleziona tutto

# nano /etc/bind/named.conf
Aggiungere la stringa:

Codice: Seleziona tutto

include "/var/lib/samba/private/named.conf";
Esempio:

Codice: Seleziona tutto

// This is the primary configuration file for the BIND DNS server named.
//
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the
// structure of BIND configuration files in Debian, *BEFORE* you customize
// this configuration file.
//
// If you are just adding zones, please do that in /etc/bind/named.conf.local

include "/var/lib/samba/private/named.conf";
include "/etc/bind/named.conf.options";
include "/etc/bind/named.conf.local";
include "/etc/bind/named.conf.default-zones";
Cambiare i permessi al file dns.keytab

Codice: Seleziona tutto

# chgrp bind /var/lib/samba/private/dns.keytab
# chmod g+r /var/lib/samba/private/dns.keytab
8) Riavviare il server

Codice: Seleziona tutto

# shutdown -r now
9) Testare il tutto:
DNS:

Codice: Seleziona tutto

host -t SRV _ldap._tcp.sec.nervesa.
risposta:

Codice: Seleziona tutto

ldap._tcp.sec.nervesa has SRV record 0 100 389 server.sec.nervesa.

Codice: Seleziona tutto

host -t SRV _kerberos._udp.sec.nervesa.
risposta:

Codice: Seleziona tutto

kerberos._udp.sec.nervesa has SRV record 0 100 88 server.sec.nervesa.

Codice: Seleziona tutto

host -t A server.sec.nervesa.
risposta:

Codice: Seleziona tutto

server.sec.nervesa has address 192.168.1.3
KERBEROS:

Codice: Seleziona tutto

kinit administrator@SEC.NERVESA
verrà richiesto di inserire la password di administrator.
risposta:

Codice: Seleziona tutto

Warning: Your password will expire in 41 days on mar 07 giu 2016 16:13:11 CEST

Codice: Seleziona tutto

klist
risposta:

Codice: Seleziona tutto

Ticket cache: FILE:/tmp/krb5cc_0
Default principal: administrator@SEC.NERVESA

Valid starting       Expires              Service principal
27/04/2016 14:41:19  28/04/2016 00:41:19  krbtgt/SEC.NERVESA@SEC.NERVESA
        renew until 28/04/2016 14:41:13
SAMBA:

Codice: Seleziona tutto

smbclient -L localhost –Uadministrator
verrà richiesta la password di administrator.
risposta:

Codice: Seleziona tutto

Domain=[SECNERVESA] OS=[Windows 6.1] Server=[Samba 4.3.8-Ubuntu]

        Sharename       Type      Comment
        ---------       ----      -------
        netlogon        Disk
        sysvol          Disk
        IPC$            IPC       IPC Service (Server Secondaria Nervesa)
Domain=[SECNERVESA] OS=[Windows 6.1] Server=[Samba 4.3.8-Ubuntu]

        Server               Comment
        ---------            -------

        Workgroup            Master
        ---------            -------
        WORKGROUP            ORION
10) PERMESSI AMMINISTRATIVI LOCALI E NON DI DOMINIO (MOLTO IMPORTANTE):

Creare un gruppo (esempio "Local Admins")

Codice: Seleziona tutto

samba-tool group add "Local Admins"
Seguire la guida per creare la GPO per i Restricted Groups (quì vi servirà RSAT, a meno che non siate pratici sul come creare delle policy manualmente):
https://wiki.samba.org/index.php/Managing_local_groups_on_domain_members_via_GPO_restricted_groups

Per far diventare l'utente amministratore, è sufficiente aggiungerlo al gruppo appena creato:

Codice: Seleziona tutto

samba-tool group addmembers "Local Admins" "utente"
Applicare GPO anche a Windows XP SP3:
Windows XP Sp3, non supporta le GPO di Active Directory di Windows Server 2008, la versione Microsoft di Samba 4.
Per farle supportare seguire la seguente guida:
(Applicare Group Policy Client Side Extensions (CSE) - KB943729)
http://nolabnoparty.com/in-windows-2008-r2-le-gpo-non-vengono-applicate-nei-client-xp-e-2003/

Per eseguire un refresh forzato delle policy, è necessario un "gpupdate /F" dato da linea di comando su ogni client (od attendere che si aggiornino da sole).
Tenete conto che alcune volte, ad esempio per applicare le GPO che vanno a modifica i membri dei gruppi, potrebbe essere necessario disconnettere e riconnettere l'utente.

- - - Fine Guida - - -

Per chi fosse interessato, ecco una mini guida su come creare ed utilizzare i loop device:
Creare un loop device da circa 100 Mb

Codice: Seleziona tutto

dd if=/dev/zero of=/data/images/loop.img bs=1K count=100K
/data/images/ è il percorso dove creo il loop device nominato come loop.img
potete aumentare o diminuire a piacimento il numero 100K (esempio: 100M, ne crea uno da un GB).

Formattare disco virtuale

Codice: Seleziona tutto

mkfs.ext4 -m 0 /data/images/loop.img -F
-m 0 > permette di non dedicare nessuno spazio aggiuntivo all'utente root (non fare su device di sistema)
-F > ignora gli errori che si verifica (è normale, perchè il device creato non è a blocchi... ma lo diventerà)

Creare punto di mount:

Codice: Seleziona tutto

mkdir /data/mount/loop
sostituire con il punto dove si andrà a creare il futuro punto di mount del device (può anche essere /dev/loop)

Modificare il file /etc/fstab aggiungendo questo (per montare automaticamente il loop device all'avvio):

Codice: Seleziona tutto

/data/images/loop.img /data/mount/loop ext4 loop,auto,dev,user_xattr,acl,barrier=1 0 0
Montare tutti i dischi non montati:

Codice: Seleziona tutto

mount -a
si può decidere di montare anche solo il loop appena creato con il comando:

Codice: Seleziona tutto

mount -o loop /data/images/loop.img /data/mount/loop
Svuotare il contenuto del loop device:

Codice: Seleziona tutto

rm -f -r -d /data/mount/loop/*
Posto inoltre alcuni comandi utili per gestire il dominio senza rsat:
NOTA: Sostituire la stringa tra i simboli percentuali con il corrispondente valore.

Configurazioni Passwords Dominio:

Codice: Seleziona tutto

Imposta complessità password:
samba-tool domain passwordsettings set --complexity %on|off%

Imposta quante password precedenti ricordare:
samba-tool domain passwordsettings set --history-length %numero%

Imposta la lunghezza minima delle password:
samba-tool domain passwordsettings set --min-pwd-length %numero%

Imposta il numero di giorni che bisogna attendere prima di cambiare password:
samba-tool domain passwordsettings set --min-pwd-age %giorni%

Imposta il numero di giorni per la scadenza della password:
samba-tool domain passwordsettings set --max-pwd-age %giorni%

Imposta il tempo di minuti che bisogna attendere prima che l’account venga sbloccato dopo aver inserito troppe password sbagliate :
samba-tool domain passwordsettings set --account-lockout-duration %minuti - 0 l’account deve essere riattivato manualmente%

Imposta il numero di volte che è possibile inserire la password sbagliata prima di essere bloccati:
samba-tool domain passwordsettings set --account-lockout-threshold %numero - 0 non è mai bloccato%

Imposta il numero di minuti che bisogna attendere prima che l’account precedentemente bloccato (per un numero troppo alto di inserimenti sbagliati della password) venga sbloccato ed il conteggio riparta da 0 (in pratica indica quanto tempo attendere prima di poter riprovare ad inserire una password):
samba-tool domain passwordsettings set --reset-account-lockout-after %minuti%

Visualizza le impostazioni del dominio sulle configurazioni delle passwords:
samba-tool domain passwordsettings show
Utenti:

Codice: Seleziona tutto

Inserire nuovo utente:
samba-tool user add %username% %password% --must-change-at-next-login"
--must-change-at-next-login serve per obbligare l'utente a cambiare password al primo accesso

Disabilitare un utente:
samba-tool user disable %username%

Abilitare un utente disabilitato:
samba-tool user enable %username%

Verificare se utente è disabilitato:
pdbedit -u %username% -v
guardare il testo "Account Flags", se c’è una D significa che l’account è disabilitato

Cambiare password ad utente:
samba-tool user setpassword %username% --newpassword "%nuova password%" --must-change-at-next-login

Cancellare utente:
samba-tool user delete %username%

Ottenere lista utenti:
samba-tool user list

Impostare nome visualizzato
pdbedit --username %username% --modify --fullname "%Nome da Visualizzare%"

Impostare e-mail (descrizione):
pdbedit -u %username% -N "%indirizzo e-mail%"

Impostare la home directory:
pdbedit -u %username% -h "%home directory%"

Reimposta il numero di tentativi di accesso falliti:
pdbedit -u %username% -z

Obbligare l’utente a cambiare password:
pdbedit -u %username% --force-initialized-passwords

Visualizzare configurazione utente:
pdbedit -u %username% -v
Gruppi:

Codice: Seleziona tutto

Ottenere la lista di gruppi:
samba-tool group list

Ottenere la lista utenti di un gruppo:
samba-tool group listmembers "%nome gruppo%"

Aggiungere un gruppo:
samba-tool group add "%nome nuovo gruppo%"

Rimuovere un gruppo:
samba-tool group delete "%nome gruppo%"

Aggiungere un membro ad un gruppo:
samba-tool group addmembers "%gruppo%" "%username - gruppo%"

Rimuovere membro da gruppo:
samba-tool group removemembers "%gruppo%" "%username - gruppo%"

Visualizzare membri di un gruppo:
samba-tool group listmembers "%gruppo%"
Spero possa essere utile a qualcuno.
Genymus
ziokernel
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 258
Iscrizione: martedì 6 maggio 2008, 19:35

Re: Configurazione Samba come Active Directory

Messaggio da ziokernel »

@Genymus grazie mille, mi metto a testare la guida, grazie 100000!
Genymus
Prode Principiante
Messaggi: 49
Iscrizione: sabato 9 maggio 2009, 10:52

Re: Configurazione Samba come Active Directory

Messaggio da Genymus »

@Ziokernel... è un piacere... e pensare che fino a poco tempo fa non ne sapevo niente...
comunque, se non ti è di troppo disturbo, dammi un feedback sulla guida (quando avrai finito).
se hai bisogno di aiuto, tengo sotto controllo la discussione, quindi posso risponderti appena ho tempo.

ps: posso farti una domanda?
per sbaglio, nei miei macchinosi test e prove per far funzionare tutto, ho cancellato alcuni utenti.
dopo aver installato samba, hai per caso un utente che si chiama sambashare?
se si, mi puoi dire che gruppo ha e che uid ha?
inoltre, tu che permessi hai sulle directory di condivisione di default di samba? e qual'è il loro utente e gruppo di default?
ps 2: volendo puoi spostare la directory syavol in un'altra posizione (come si vede dal mio smb.conf), ma devi ricordarti di copiare tutte le acl di quella share... se vuoi un consiglio, prima di metterti a configurare a manetta policy di gruppo, copiati la directory originale di sysvol di samba con l'opzione di mantenere tutti gli attributi (importante) del comando cp.

se necessiti di ulteriori spiegazioni ed aiuto, sono qui.
Genymus

Genymus
Scrivi risposta

Ritorna a “Ubuntu su server”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 17 ospiti