Il protocollo LDAPads/corso-security/www/CORSO-0203/... · 2004-03-09 · Opzioni della riga di...
Transcript of Il protocollo LDAPads/corso-security/www/CORSO-0203/... · 2004-03-09 · Opzioni della riga di...
1
Antonio RadescaAnno Accademico 2002-2003
Sistemi per l’elaborazione dell’informazione: Sicurezza su reti Problemi
♦ Reti molto vaste con numerose risorse da gestire…♦ Account validi non usati, account dimenticati,password da
cambiare su più macchine... ♦ Localizzare oggetti quali: computer , stampanti, utenti…♦ Gestire il processo di autenticazione…
???
Il protocollo LDAP♦ Il protocollo LDAP (Lightweight Directory Access
Protocol) è uno standard aperto per l’erogazione di servizi di directory tramite una rete Intranet o Internet
♦ Basato sullo standard X.500 e su TCP ♦ Discendente del protocollo DAP♦ Proposto nel 1993 ed adottato dalla IETF
Vantaggi di LDAP
♦ Cataloga tutte le informazioni riguardanti gli oggetti presenti in una rete , quali utenti , stampanti e workstatione le distribuisce in tutta la rete
♦ Le informazioni sono contenute in un database centralizzato
♦ Garantisce il controllo sugli accessi e permette la gestione del processo di autenticazione
♦ Fornisce una visione semplificata ed omogenea della rete
Servizio di Directory♦ Un servizio di directory è un database contenente
informazioni riguardanti gli oggetti presenti all’interno di una rete basate su attributi
♦ Permette una gestione gerarchica e centralizzata degli oggetti presenti in una rete
♦ Generalmente si tratta di un servizio distribuito♦ Permette brevi tempi di risposta a query permettendo la
replica delle informazioni
Differenze tra LDAP e DAP♦ DAP(Directory Acces Protocol) è un protocollo che
richiede molte risorse e opera su tutti i livelli dello standard OSI
♦ LDAP è progettato per funzionare su TCP/IP (solo 4 livelli) ed offre la maggior parte della funzionalità di DAP ad un costo molto più basso
2
Struttura del protocollo LDAP♦ Basato sul paradigma Client -Server♦ Struttura gerarchica(simile al DNS)♦ Esiste uno o più server che forniscono accesso a un
DIT(Directory Information Tree)♦ L’albero è formato da entry
Entry♦ Un'entry è una raccolta di attributi che fanno riferimento
ad un Distinguished Name (DN) unico♦ Il DN è usato per riferirsi inequivocabilmente all’entry
ESEMPIOEntry per l’utente Antonio Radesca:
uid=antrad,ou=People,dc=example,dc=com.
Albero di Directory LDAP Sessione LDAP
Client LDAP si connette ad un server LDAP e gli
pone una domanda
Il server LDAP gli ritorna la risposta oppureun puntatore alla posizione in cui il client
potrà avere maggiori informazion(tipicamenterestituisce l’indirizzo IP di un altro server LDAP)
Richiesta
Risposta
IBM Compatible
Client LDAP Server LDAP
Autenticazione con LDAP
Workstation
IBM CompatibleIBM Compatible
Autenticazione e generazione del TGT
Richiesta e rilascio ticket per servizio LDAP
Invio ticket per servizio LDAP
Invio query erispostatramite SSL
Server KerberosServer LDAP OpenLDAP
www.openldap.org
3
1. Panoramica e prerequisiti di OpenLDAP2. Installazione3. Caratteristiche e struttura 4. Configurazione di slapd5. Schemi e Access List6. Configurazione per la replica7. PAM_LDAP 8. OpenLDAP e Microsoft @ Active Directory
♦ Implementazione “Open Source” di strumenti a supporto del protocollo LDAP
♦ Versione di riferimento 2.1.19 (Maggio 2003)♦ Adottato dalle maggiori distribuzioni Linuxe usato
soprattutto per l’autenticazione in ambienti di calcolo distribuiti.
♦ Supporta la distribuzione dei carichi di lavoro♦ Fornisce brevi tempi di risposta ♦ Permette la replica delle informazioni
OpenLDAP
Prerequisiti software per l’installazione
♦ Librerie OpenSSL-TLS(www.openssl.org)♦ Servizi di autenticazione Kerberos e/o PAM (Per
l’autenticazione sicura)♦ Librerie Cyrus SASL (Simple Authentication and Security
Layer)♦ Berkeley DB 4♦ POSIX Thread♦ Librerie libpam-ldap(Opzionali)♦ nss-ldap(Opzionale)
Installazione di OpenLDAP♦ Formati disponibili:Sorgente(tar.gz) e RPM♦ Release di riferimento:2.1.19(Maggio 2003)♦ Configurazione e complazione sorgenti(Utente root)#tar –xf openldp-2.1.19.tgz#cd openldap-2.1.19#./configure#make depend#make #make install♦ Installazione basata su RPM(Suse,RedHat,Mandrake..)#rpm –i openldap-2.1.19.rpm
Demoni di OpenLDAP
slapd♦ Server che gestisce le richieste dei client del servizio♦ Spesso è in esecuzione su più macchine della rete per
aumentare la disponibilità del servizio con una copia di parte o tutta la struttura dell’albero di directory
Demoni di OpenLDAP
slurpd♦ Garantisce la consistenza delle informazioni tra le istanze
di slapd che partecipano al servizio(la consistenza è gestita mediante la replica e lo scambio di messaggi)
4
Interazione tra slapd e slurpd
1-Richiesta
2-Riferimento
3-Richiesta
4-Risposta 5-Scrive Replication Log
6-Legge
7-Invia
Master slapd
Slave slapd slurpd
Client
Avvio e terminazione di slapdAVVIO
♦ Per installazioni da RPM:#/etc/init.d/slapd start
♦ Per installazioni da sorgenti:#/usr/local/etc/libexec/slapd start
TERMINAZIONE♦ Per installazioni da RPM:
#/etc/init.d/slapd stop♦ Per installazioni da sorgenti:
#kill –INT ‘cat /usr/local/var/slapd.log’
Opzioni della riga di comando
♦ -f <nome_file>Specifica il percorso del file di configurazione
♦ -h <URL>Specifica configurazioni alternative per il serverDefault : ldap://
♦ -n <nome_servizio>Specifica il nome del servizio,per default il nome è slapd
♦ -l <syslog-utente-locale>Specifica l’utente abilitato al syslog
Formato LDIF
♦ LDIF è l’acronimo di LDAP Data Interchange Format ♦ Usato da OpenLDAP per rappresentare le entry del servizio
di directory in formato testuale nel database e per lagestione degli schemi
♦ Formato di una entry:
Dn:<distinguished name><attrdesc>:<attrvalue><attrdesc>:<attrvalue>…attrdesc può essere un tipo di attributo come dn oppure objestClass o può includere opzioni come cn;lang_... oppure userCerticate;binary.
Configurazione del demone slapd
♦ Gestita atraceverso il file slapd.conf (contenuto generalmente nella directory /usr/local/etc/openldap)
♦ Diviso in 3 sezioni:1. Global2. Backend specific3. Database specific
Struttura di slapd.conf♦ IL carattere # indica una riga di commenti
♦ Formato generale:# global configuration directives <global config directives>
# backend definition backend <typeA> <backend -specific directives >
# first database definition & config directives database <typeA> <database-specific directives>
# second database definition & config directivesdatabase <typeB><database-specific directives>
# second database definition & config directives database <typeA> <database-specific directives>
# subsequent backend & database definitions & config directives ...
5
Regole di slapd.conf
♦ Ogni direttiva di una sezione può sovrascrivere la stessa direttiva specificata nella sezione precedente
ESEMPIO:Impostata una proprietà sia nella sezione “Global” che in quella “Database specific”,quella usata da slapd sarà quella impostata nella sezione “Database specific”
♦ Alcune direttive possono avere significato diverso a seconda della sezione in cui si trovano
Direttive globali di slapd.conf(1)
♦ includeCarica gli schemi
♦ access to <what> by <who> <access level> <control>Garantisce l’accesso a un insieme di entry e/o attributi a uno o più richiedenti(ACL)
♦ defaultaccess { none|compare|search|read|write }Specifica l’accesso nel caso in cui nessuna direttiva sia stata specificata
♦ idletimeout <filename>Specifica il numero di secondi da attendere prima di forzare la disconnessione di un client
Direttive globali di slapd.conf(2)
♦ attributetipe <attribute type description>Definisce un tipo per un attributo
♦ loglevelSpecifica il modo in cui vengono eseguite le attività di debug e le statistiche al demone syslogd
♦ objectClass <RFC2252 Object Class Description>Definisce una classe di oggetti
♦ referral <URL>Direttiva che specifica il riferimento da passare nel caso in cui slapdnon possa soddisfare una richiesta
Direttive globali di slapd.conf(3)
♦ sizelimit <integer>Questa direttiva specifica il numero massimo di entry da ritornare dopo un’operazione di ricercaDefault :sizelimit 500
♦ timelimit <integer>Specifica il numero massimo di secondi (in tempo reale) che slapdimpiegherà per soddisfare una query. Se una richiesta non potrà essere soddisfatta entro quel tempo, sarà ritornato un errore di timeoutDefault :timelimit 3600
Schemi in slapd.conf♦ Contengono le definizioni dei tipi di oggetti(detti Classi o
objectClass)
♦ Esempi di tipi di oggetti : utenti,gruppi,stampanti o risorse condivise
♦ Sono contenuti in file con estensione .schema
Direttive di Backend♦ Backend <type>
Direttive usate per la configurazione di backend di pacchetti a supporto di OpenLDAP
Types Descriptionbdb Berkeley DB transactional backend dnssrv DNS SRV backendldap LDAP (Proxy) backend ldbm Lightweight DBM backendmeta Meta Directory backend monitor Monitor backend passwd Provides read-only access to passwd(5)perl Perl Programmable backend shell Shell (extern program) backendsql SQL Programmable backend
6
Direttive generali di database
♦ database <type>Indica l'inizio di una dichiarazione di istanza di database.,<type> dovrebbe essere uno dei tipi di backend elencati
♦ directorySpecifica la posizione fisica dei file utilizzati permemorizzare gli oggetti presenti nella directory
♦ replicaSpecifica un host che contiene una copia del database delle direttive
Direttive generali di Database(2)♦ readonly on|off
Specifica la modalità in cui il database si trova♦ replogfile <filename>
Specifica il nome del file di log per la gestione della replica dele informazioni
♦ rootpw <password>Direttiva usata per specificare una password per il DN del rootdn
Direttive generali di Database(3)♦ rootdn <dn>
Specifica il DN che non è soggetto a controllo o restrizioni per questo database. Il DN si riferisce di solito a un’entrynel database o nella directory oppure può riferirirsia identità SASL
Esempio basato su entry :rootdn "cn=Manager,dc=example,dc=com"
Esempio basato su SASL:rootdn "uid=root,cn=example.com,cn=digest-md5,cn=auth“
Direttive generali di Database(4)♦ updatedn <dn>
Questa direttiva è applicabile solo a demoni slapdslaveSpecifica il DN che può effettuare operazioni di replicaDovrebbe essere il DN del demone slurpd
♦ updateref <URL>Specifica l’ URL da ritornare ai client che richiedono query di update da replicareDirettiva applicabile solo a demoni slapd slave
Direttive di database specifiche♦ Direttive di questo tipo sono applicabili solo a determinati
tipi di database♦ Esempi di direttive di database BDB e LDBM:
directory <directory>Questa direttiva specifica la directory si trovano i file BDB che contengono il database e gli indici associaticachesize <integer>Specifica la dimensione della cache dell’istanza del database di backend LDBM in numero di entry
Access list♦ Specifica le modalità per l’accesso al servizio di directory
ESEMPIO (1):access to attr=userPassword by self write by anonymous auth by dn.base="cn=Admin,dc=example,dc=com" writeby * none
L’amministratore può modificare l’attributo userPassword di qualsiasi entry, ogni entry può modificare il suo attributo userPassword e tutti gli altri non hanno permesso di lettura e di scrittura sull’attributo
7
Access list(2)ESEMPIO (2)
access to * by dn.base="cn=Admin,dc=example,dc=com" write by * read
Specifica che l’amministratore ha permesso di scrittura su qualsiasi oggetto e tutti hanno permesso di lettura su tutti gli oggetti
Esempio di file slapd.conf1. # Configurazionne d’esempio2. include /usr/local/etc/schema/core.schema 3. referral ldap://root.openldap.org4. access to * by * read
5.# Definizioni BDB6. database bdb 7. suffix "dc=example,dc=com" 8. directory /usr/local/var/openldap-data 9. rootdn "cn=Manager,dc=example,dc=com" 10. rootpw secret
11.# Direttive per la replica12. replogfile /usr/local/var/openldap/slapd.replog 13. replica host=host2.example.com:389 14. binddn="cn=Replicator,dc=example,dc=com"15. bindmethod=simple credentials=secret 16. replica host=slave2.example.com 17. binddn="cn=Replicator,dc=example,dc=com" 18. bindmethod=simple credentials=secret
Esempio di file slapd.conf(2)19. # Definizione degli attributi degli indici20. index uid pres,eq 21. index cn,sn,uid pres,eq,approx,sub22. index objectClass eq
23. # Definizione delle politiche d’acsesso24. access to attr=userPassword 25. by self write 26. by anonymous auth 27. by dn.base="cn=Admin,dc=example,dc=com" write28. by * none 29. access to * 30. by self write 31. by dn.base="cn=Admin,dc=example,dc=com" write 32. by * read
Esempio di file slapd.conf(3)33. # Definizioni BDB34. database bdb 35. suffix "dc=example,dc=net" 36. directory /usr/local/var/openldap-data-net 37. rootdn "cn=Manager,dc=example,dc=com" 38. index objectClass eq 39. access to * by users read
Strumenti per la manutenzione
♦ slappadd ♦ slapcat (Fa il dump del database in formato LDIF)♦ slappasswd♦ ldapadd♦ ldapdelete♦ ldapmodify♦ ldapsearch♦ ldappasswd♦ slapindex(Crea indici per il database)
Basati sulla creazione di file in formato testo LDIF
Gestione degli schemi♦ Definiscono la struttura delle entry del database di
OpenLDAP♦ Si possono includere nel file slapd.conf tramite la direttiva
include♦ Ne esistono di predefiniti ma è possibile installarne altri
ponendo i relativi file nella directory ./ldapdirectory/schema
♦ Lo schema core.schema va incluso obbligatoriamente per garantire l’avvio di OpenLDAP
8
Estensione degli schema♦ Ogni schema, anche quelli predefiniti, può essere esteso
con ulteriori tipi di attributi,regole di matching,classi di oggetti…
♦ Per definire nuovi schemi sono necessari 5 passi:1. Ottenere un Identificatore di Oggetto2. Assegnare un Prefix Name3. Creare un file schema locale4. Definire tipi di attributi personalizzati5. Definire classi di oggetti personalizzate
OID♦Servono per identificare a livello globale (internet) gli oggetti di uno schema♦Sono assegnati da apposite autorità presenti su Internet♦Sono organizzati in modo gerarchico♦Sono usati anche nel protocollo SNMP
Esempio di gerarchia OID
Classi di oggetti1.1.2.2
MiaClasse1.1.2.2.1
NomeAttributo1.1.2.1.1
TipoAttributo1.1.2.1
Elementi LDAP1.1.2
Elementi SNMP1.1.1
OID Organizzazione
1.1
AssegnamentoOID
Name Prefix e Local file Schema
♦ Un Name Prefixfornisce un nome testuale per ogni elemento dello schema(oggetto)
♦ I Local Files Schema forniscono definizioni che permettono di costruire nuovi elementi e attraverso le direttive objectClass e attributeTypes anche nuove regole sugli stessi
♦ Una volta creati devono essere inclusi con la direttiva include per entrar a far parte della configurazione di OpenLDAP
Specifica di tipi di attributi♦È usata la direttiva attributetype per definire nuovi tipi di attributi
Esempio di attributo tratto da core.schema (specificato nel RFC2256):
attributetype ( 2.5.4.4 NAME ( 'sn' 'surname' )DESC 'RFC2256: last (family) name(s) for whichthe entity is known by'SUP name )
Aggiunta di classi♦ Questa fase permette attraverso la direttiva
objectclass di specificare nuove classi di oggettiobjectclass <RFC2252 Object Class Description>
♦ Struttura di ObjectClassDescription:ObjectClassDescription= "(" whsp
numericoid whsp ; ObjectClass identifier[ "NAME" qdescrs ][ "DESC" qdstring ][ "OBSOLETE" whsp ][ "SUP" oids ] ; Superior ObjectClasses[ ( "ABSTRACT" / "STRUCTURAL" / "AUXILIARY" ) whsp]; default structural[ "MUST" oids ] ; AttributeTypes[ "MAY" oids ] ; AttributeTypeswhsp ")"
Replica con slurpd
♦ La replica delle informazioni è affidata al demone slurpd♦ Usata se il numero di client della rete è elevato♦ Il demone slurpd ha la capacità di propagare i cambiamenti
di un server slapd (detto master) alle altre istanze di slapd(slave)
♦ Il passaggio delle informazioni di replica usa il protocollo LDAP stesso
9
Replication LogsConfigurato slurpd genera dei file di log in formato LDIF e specifica i cambiamenti in corso nella strttura di directory che saranno poi ripresi dai server slave
La struttura dei cambiamenti è basata sull’invio delle seguenti informazioni:
•Replication site(s)•Timestamp•DN entry•Informazioni sui cambiamenti da effettuare.
Setup del Master slapd♦ I cambiamenti da fare a slapd.confper rendere uno slapd server
master-server sono:
1. Aggiunta di un direttiva replica per ogni replica2. Il parametro binddn =parametro deve referenziare l’opzione
updatedn nei corrispondenti slave slapd.conf file e si deve permettere la scrittura nei database degli slave
3. Aggiungere una direttiva di configurazione replogfile
Setup di slapd-slave♦ Passi per la configurazione dei server slave:
1. Non includere direttive replica2. Non includere direttive replogfile3. Non includere la linea updatedn4. Il DN del parametro binddn =parametro deve fare matching
con con il parametro di replica nel file di configurazione del master server
5. Il DN nella direttiva updatedn deve avere permesso di scrittura nel database
6. Usare la direttiva updateref per definire l’URL che il server slave deve ritornare se è stata ricevuta una richiesta di update
Configurazione di slapd per la replica♦Esempio di direttiva per il supporto delle repliche:
replica host=slave.esempio.com:389binddn=“cn=Replicator,dc=esempio,dc=com”bindmethod=simple credential=secret
GUI per la configurazione di OpenLDAP
Tool per la gestione di OpenLDAP tramite interfaccia grafica:
♦Java LDAP Browser Editorhttp://www. iit.edu/~gawojar/ldap/
♦KLDAPhttp://www.mountpoint.ch/oliver/kldap/
♦KDirAdmhttp://www. carillonis.com/kdiradm /
♦GQhttp://biot.com/gq
OpenLDAP:Un caso di studio(1)
Installazione di PAM_LDAP
10
PAM♦ PAM è un sistema per la gestione del processo di
autenticazione tramite plug-in♦ Rende trasparente il meccanismo di autenticazione ♦ Permette di usare LDAP come meccanismo di
autenticazione su qualsiasi sistema supporti PAM senza modificare alcuna applicazione
♦ Tramite files di configurazione é possibile stabilire in che modo OpenLDAPdeve autenticare gli utenti
PAM_LDAP
Pam_ldap.so♦ Pam_ldap.so é il modulo necessario a PAM per l’integrazione con
LDAP♦ I file di configurazione di PAM sono nella directory /etc/pam.d
Esempio configurazione PAM
OpenLDAP:Un caso di studio(2)Integrazione con Microsoft Active Directory e
autenticazione degli utenti
Scenario(1)♦ Integrazione di client linux con OpenLDAP installato e Active
Directory♦ Piattaforma basata prevalentemente su soluzioni Microsoft♦ Server Windows 2000 con Active Directory installato♦ Client RedHat Linux♦ Autenticazione basata su Active directory♦ Soluzione adottata al Consorzio Operativo del gruppo MPS
Prerequisiti per Active directory
1. ServicePack 2 per Win20002. MS Resource Kit3. MS Security Pack4. Certificato per il server Windows 2000 controller di dominio5. Schema che simula un server NIS distribuito con Microsoft
Service for Unix oppure il programma MSKADExtplugin6. Abilitare le query anonime su Active Directory
11
Configurazione Active Directory Configurazione di AD per client Linux
♦Creare un utente per ogni servizio e relativa workstation Linux e succesivamente creare il file keytab con il comando:
Ktpass –princ <nome_servizio>linux-ws.\nomedominiowindows@nomedominio -pass <password> -mapuser <utente> -out linux-\ws.keytab
♦Il file generato linux -ws.keytab dovrebbe essere poi trasferito sulla macchina linux-ws in maniera sicura.
Configurazione client(1)♦ Pacchetti da installare:nss_ldap ,pam_krb5,libnss_ldap.so.2
♦ Modifica del file /etc/nsswitch.conf con le righe:passwd: files ldapshadow: files ldapgroup: files ldap
♦ Modifica della libreria libnss affinchè ricerchi le informazioni usando SSL attraverso la modifica del file /etc/ldap.conf:
Nomehost ldapserver.nomedominio.testbase dc=nomedominio,dc=testssl onport 636
Configurazione client(2)♦Impostare nel file /etc/krb5.conf il KDC e il reame.♦Impostare l’utilizzo del modulo pam_krb5.sonel file /etc/pam.d/system-authLe stesse operazione possono essere fatte in modalità gui tramiteauthconfigcon RedHat Linux
Configurazione slapd.conf♦ Nel file slapd.conf bisogna aggiungere la mappatura fra gli attributi del
server LDAP di Microsoft e quelli cercati dalla libreria nss_ldap.so :
nss_base_passwd cn=Users,dc=dominio,dc=testnss_base_shadow cn=Users,dc=dominio,dc=testnss_base_group cn=Users,dc=dominio,dc=test
nss_map_objectclass posixAccount Usernss_map_objectclass shadowAccount Usernss_map_attribute uid sAMAccountNamenss_map_attribute userPassword msSFUPasswordnss_map_attribute homeDirectory…
Configurazione slapd.conf(2)♦ Per accedere ad Active Directory in modo non anonimo specificare
DN con cui si identifica la connessione e la password:
binddn cn=LDAPQUERYUSER,cn=Users,\dc=dominio,dc=testbind miapassword
♦ Rendere il file accessibile solo dall’utente root
12
Scenario(2)♦ Integrazione di server linux con OpenLDAP installato e Active
Directory♦ Server RedHat Linux con OpenLDAP e MIT Kerberos V♦ Autenticazione basata su Linux,Kerberose OpenLDAP♦ Fonte RedHat Magazine no. 4
Prerequisiti per OpenLDAP
♦ krb5-libs,krb5-server,krb5-workstation ♦ cyrus-sasl,cyrus-sasl-gssapi
Configurazione slapd.confü Includere nel file slapd.conf gli schema kerberosobject.schema e
nis.schemaü Impostare il tipo di database da usareü Impostare dominio del serverü Specificare il DN dell’amministratore della directory
ESEMPIO:
database ldbm
suffix “dc=dominio,dc=test”
root “cn=ldapadmin ,dc=dominio,dc=test”
Configurazione TLS/SSL♦ In slapd.conf aggiungere le direttive:
TLSCipherSuite HIGH:MEDIUM:+SSL2TLSCertificateFile /usr/share/ssl/serts/slapd.pemTLSCertificateKeyFile /usr/share/ssl/certs/slapd.pem
Gestione certificati♦ Creare un certificato tramite un Makefile posto nella directory
/usr/share/ssl/certs♦ Eseguire make slapd.pem♦ Fornire le informazione per la creazione del certificato♦ Porre il certificato in lettura al gruppo di utenti LDAP
Autenticazione con sasl/gss-api♦ Sostituire l’autenticazione di default(plain ) e mappare i principali
Kerberos in OpenLDAP :
sasl-realm mio.dominiosasl-host kdc.mio.dominiosasl-spec-props “”
sasl-regexpuid=(.*),cn=.*,cn=authuid=$1,ou=person,dc=dominio,dc=test
13
Impostazione ACL(1)♦ Impostare la lettura della directory:
access to dn=“” by * read access to attr=userPassword
by dn=“cn=root,dc=dominio,dc=test”write
by anonymous authby * none
Impostazione ACL(2)access to attr=loginShell
by dn=“cn=root,dc=dominio,dc=test”write
by self writeby * read
access to *by self writeby * readby anonymous read
Popolazione database con slapadd
♦ File in formato LDIFF:
#ROOT della directorydn: dc=dominio,dc=testdc: dominioobjectClass: topobjectClass: domain…
Popolazione database con slapadd(2)#root del server LDAPdn:dc=ldapadmin ,dc=dominio,dc=testobjectClass: organizationalRoleCn: ldapadmin…#Groups,dominio,testdn:ou=Groups,dc=dominio,dc=testou:GroupsobjectClass: topobjectClass: organizationalUnitobjectClass: domainRelatedObjectassociatedDomain : dominio.test…
Configurazioni alternative♦ Usare script forniti con il software per il trasferimento
delle utenze da NIS o da locale:
1. Modificare lo script migrate_common.ph in /usr/share/doc/openldap-servers
2. Usare migrate_all_on_line.pl per trasferire gli utenti nel database LDAP
La verifica della configurazione può essere fatta con il comandoldapsearch
Limitazioni d’accesso
♦ Per limitare l’accesso al server senza SSL si può usare il firewalliptables con il comando:
iptables -A INPUT -dport ldap –J DROP
♦ Per limitare l’accesso ai soli host fidati si può usarecon tcp_wrappers:
slapd:ALL in /etc/hosts.denyslapd:dominio.test /etc/hosts.allow
14
Bibliografia
♦ Documentazione di www.openldap.org♦ LDAP How-To♦ LDAP Implementation How-To♦ Documentazione www.mandrake.it♦ Documentazione www.redhat.it♦ RedHat Magazione no. 4 Maggio/Giugno
2003
THE END