Scaricare la presentazione
La presentazione è in caricamento. Aspetta per favore
PubblicatoGiacinta Mattei Modificato 9 anni fa
1
Fedora Directory Server Dael Maselli
2
Funzionalita’ principali Replica Multi-Master fino a 4 nodi Connessione e autenticazione sicura (SSLv3, TLSv1 e SASL) Codice sviluppato da 10 anni FDS discende direttamente da RedHat DS, che a sua volta viene da Netscape DS, il quale e’ stato sviluppato insieme Sun One DS (iPlanet) Documentazione molto completa E’ possibile fare riferimento a RedHat DS 7.1: http://www.redhat.com/docs/manuals/dir-server/
3
Funzionalita’ principali Sincronizzazione con Active Directory Supporto per LDAPv3 Schema update, configurazione e Access Control Information (ACIs) on-line Console grafica per la gestione delle utenze e della configurazione
4
Architettura Fedora Directory Server e’ composto dai seguenti componenti Un server front-end, responsabile delle comunicazioni di rete Plug-in per funzionalita’ del server come permessi di accesso e replica Plug-in di back-end del database dove risiedono i dati del server Un directory tree di base contenente informazioni per il server (configurazione)
5
Basic Directory Tree cn=config Subtree contenente la configurazione di base di FDS o=NetscapeRoot Subtree contentente le configurazioni di altri server come l’Administration Server o=userRoot Subtree utente, nel nostro caso si chiamera’: L=, O=INFN, C=IT
6
Database back-end Il database back-end e’ il plugin che gestisce tutto lo storage utente I dati vengono archiviati tramite BerkeleyDB La configurazione base e gli schema risiedono invece in file di testo LDIF caricati allo start-up: “cn=config”: /opt/fedora-ds/slapd-[instance]/config/dse.ldif Schema: /opt/fedora-ds/slapd-[instance]/config/schema/*.ldif
7
Access control Il controllo degli accessi viene gestito attraverso le ACI (Access Control Information) L’ACI e’ un attributo amministrativo inseribile in una qualsiasi entry del DS Le ACI vengono ereditate dagli eventuali figli della entry in cui e’ inserita
8
Elementi dell’ACI Target Rappresenta l’oggetto dell’ACI: entry e attributi Subject / Bind Rule Rappresenta il soggetto (chi, da dove, come, quando) che accede al target Type of Access / Permission E’ l’elenco delle azioni permesse o negate al Subject sul Target aci:(target="ldap:///uid=bjensen,dc=example,dc=com“)(targetattr=loginShell) (version 3.0;acl “sample"; allow (write,delete) userdn="ldap:///self"; and (dns="*.infn.it") and (dayofweek = "Sun") and (timeofday >= "900“ and timeofday < "1100"))
9
Wildcard e Filtri nelle ACI Nel Target e nel Subject (dn, ip, dns) e’ possibile inserire delle wildcard es: (target="ldap:///uid=mase*,dc=example,dc=com") E’ possibile limitare il Target attraverso dei filtri controllando il contenuto degli attributi es: (targetfilter=(objectClass=*user)) In questo modo l'ACI definira' l'accesso solo verso le entry che hanno un objectClass che termina con "user"
10
Ordine di valutazione delle ACI Non esiste un ordine gerarchico nella valutazione delle ACI Le ACI applicabili ad una Entry vengono valutate complessivamente I Deny hanno priorita’ sugli Allow I permessi di Allow sono dati dall’unione dei vari Allow applicabili Se non c’e’ alcun match ogni operazione viene negata
11
Replica Le repliche vengono effettuate sulla base dei suffix E’ possibile replicare solo interamente i suffix (es: L=LNF, O=INFN, C=IT) In caso si voglia replicare solo un ramo (es: ou=People, L=LNF, O=INFN, C=IT) e’ necessario crearlo come sub-suffix (il quale avra’ un DB separato) Nella replica multi-master e’ possibile scrivere contemporaneamente su piu’ nodi Ogni entry ha un attributo di timestamp dell’ultima modifica Eventuali conflitti verranno risolti automaticamente (the last wins)
12
Chaining In FDS il chaining viene implementato come plug-in (Database Link) Non sono supporati il Backup, Restore, Import ed Export di un DB Link Il Bind viene inoltrato ed esaminato dal server dove risiede l’utente
13
Chaining A C B (proxy permission: A) db link uid=pippo, L=uno uid=pluto, L=due Query: uid=pippo, L=uno Bind: uid=pluto, L=due db link
14
Chaining & ACI Grazie al permesso "proxy" durante il chaining viene inoltrato lo userDN del BIND effettuato Nel server di destinazione le ACI: Possono autorizzare direttamente uno userDN remoto Possono autorizzare un gruppo locale costituito anche di utenti remoti Non possono puntare ad un gruppo remoto
15
GSSAPI, SASL & Kerberos5 FDS supporta GSSAPI tramite mapping SASL per l’autenticazione tramite ticket Kerberos5 E possibile configurare delle regular expression per il matching del Principal negli attributi: dn: cn=krb5-lnf,cn=mapping,cn=sasl,cn=config objectClass: top objectClass: nsSaslMapping cn: krb5-lnf nsSaslMapRegexString: \(.*\)@K5.LNF.INFN.IT nsSaslMapBaseDNTemplate: ou=People, L=LNF, O=INFN, C=IT nsSaslMapFilterTemplate: (uid=\1)
16
Plug-in di autenticazione E’ possibile inoltrare le richieste di Bind (username&password) di FDS ad un altro metodo di autenticazione Tramite il plug-in: PAM Pass Through Auth Con PAM e’ quindi possibile utilizzare la maggior parte dei sistemi di autenticazione come AFS, Kerberos5, ecc.
17
Strumenti client (cmd-line) Gli strumenti piu’ comuni per accedere al DS sono ldapsearch, ldapmodify, ldapdelete Utilizzano il file di configurazione /etc/ldap.conf Opzioni comuni: -x usa simple auth (con user/pass) -D user specifica l’utente per il Bind -w pass specifica la password per il bind -W fa in modo che la password venga chiesta in seguito -h host specifica l’host a cui collegarsi -Y GSSAPI utilizza il bind tramite SASL / GSSAPI per Kerberos5 -Z o -ZZ richiede la cifratura TLS, -ZZ fa in modo che sia obbligatoria
18
ldapsearch ldapsearch [options] [search_filter] [attributes_to_show] E’ lo strumento che permette di interrogare il DS ldapsearch -x "sn=maselli" "dn telephoneNumber roomNumber" ldapsearch -x "sn=maselli" "*" ldapsearch -x -D "cn=Directory Manager" -W "sn=maselli" "* " E’ possibile specificare un base suffix con: ldapsearch -x –b "L=LNF,O=INFN,C=IT" "sn=maselli" "*" Per leggere le ACI: ldapsearch -x "(aci=*)" "aci"
19
ldapmodify ldapmodify [options] [-a] [-f file] E’ lo strumento che permette effettuare modifiche sul DS Accetta input solo in formato LDIF Normalmente da STDIN Oppure da file con opzione "–f file" Per default modifica entry esistenti Per aggiungere nuove entry utilizzare l'opzione "-a"
20
ldapdelete ldapdelete [entry1] [entry2] [entry3] [...] E’ lo strumento che permette eliminare entry dal DS E' possibile eliminare solo entry che non abbiano figli Eventualmente e' necessario eliminarli prima
21
Fedora Management Console E' lo strumento grafico principale di FDS Da questo e' possibile gestire: Directory Access Control Information (ACI) Configurazione Plug-in Replica Chaining Back-up... ...
22
Fedora Management Console
25
Dael Maselli e-mail: Dael.Maselli@LNF.INFN.ITDael.Maselli@LNF.INFN.IT F I N E
Presentazioni simili
© 2024 SlidePlayer.it Inc.
All rights reserved.