GNU/Linux >> Linux Esercitazione >  >> Linux

Come installare e configurare OpenLDAP su CentOS / RHEL Linux

LDAP sta per Lightweight Directory Access Protocol.

LDAP è una soluzione per accedere alle informazioni archiviate centralmente sulla rete. Queste informazioni archiviate centralmente sono organizzate in una directory che segue lo standard X.500.

Le informazioni vengono archiviate e organizzate in modo gerarchico e il vantaggio di questo approccio è che le informazioni possono essere raggruppate in contenitori e i client possono accedere a questi contenitori quando necessario.

La gerarchia OpenLDAP è quasi simile alla gerarchia DNS.

I seguenti sono i due oggetti più comunemente usati in OpenLDAP:

  1. cn (nome comune) – Si riferisce alle voci foglia, che sono oggetti finali (ad esempio:utenti e gruppi)
  2. dc (componente di dominio) – Si riferisce a una delle voci del contenitore nella gerarchia LDAP. Se in una configurazione la gerarchia LDAP è mappata su una gerarchia DNS, in genere tutti i domini DNS vengono indicati come oggetti controller di dominio.

Ad esempio, se nella gerarchia è presente un utente sam.thegeekstuff.com, il nome distinto completo di questo utente viene indicato come cn=sam, dc=thegeekstuff, dc=com. Se hai notato nell'FDN (nome distinto completo), viene utilizzata una virgola come separatore e non un punto, cosa comune in DNS.

Utilizzando i diversi tipi di voci LDAP, è possibile impostare una struttura di directory gerarchica. Questo è il motivo per cui openLDAP è così ampiamente utilizzato. Puoi facilmente creare una gerarchia openLDAP in cui gli oggetti nelle altre posizioni sono facilmente riferiti senza archiviarli su server locali. Ciò rende OpenLDAP una directory leggera, soprattutto se confrontata con altri server di directory come Active Directory di Microsoft.

Ora vediamo come configurare una singola istanza di un server LDAP che può essere utilizzato da più client nella tua rete per l'autenticazione.

Installa i pacchetti OpenLDAP

Su CentOS e RedHat, usa yum install come mostrato di seguito, per installare i pacchetti relativi a openldap.

yum install -y openldap openldap-clients openldap-servers

Dovresti installare i seguenti tre pacchetti:

  1. openldap-servers – Questo è il server LDAP principale
  2. openldap-clients:contiene tutte le utilità client LDAP richieste
  3. openldap – Questo pacchetto contiene le librerie di supporto LDAP

File di configurazione LDAP

  • config.ldif – La configurazione predefinita di LDAP è archiviata in un file in /etc/openldap/slapd.d/cn=config.ldif creato nel formato LDIF. Questo è il formato di input LDAP (LDIF), un formato specifico che consente di inserire informazioni nella directory LDAP.
  • olcDatabase{2}bdb.ldif – Puoi anche modificare le impostazioni come il numero di connessioni che il server può supportare, i timeout e altre impostazioni del database nel file /etc/openldap/slapd.d/cn=config/olcDatabase{2 }bdb.ldif. Questo è il file che contiene anche i parametri come l'utente root LDAP e il DN di base.

Crea un account olcRootDN come amministratore

Si consiglia sempre di creare prima un account utente dedicato con le autorizzazioni complete per modificare le informazioni sul database LDAP.

Modificare il file olcDatabase={2}bdb.ldif e modificare la voce olcRootDN. Quella che segue è la voce predefinita.

# grep olcRootDN /etc/openldap/slapd.d/cn=config/olcDatabase={2}bdb.ldif
olcRootDN: cn=Manager,dc=my-domain,dc=com

Modifica la riga sopra con un utente amministratore. In questo esempio, l'utente "ramesh" sarà olcRootDN.

olcRootDN: cn=ramesh,dc=thegeekstuff,dc=com

Crea password radice olcRootPW

Ora usa il comando slappasswd per creare un hash per la password di root che vuoi usare. Una volta generata la password, apri il file cn=config.ldif, includi il parametro olcRootPW e copia la password con hash come mostrato di seguito.

Eseguire il comando seguente e specificare una password. Questo genererà l'hash per la password specificata.

# slappasswd
New password: SecretLDAPRootPass2015
Re-enter new password: SecretLDAPRootPass2015
{SSHA}1pgok6qWn24lpBkVreTDboTr81rg4QC6

Prendi l'output hash del comando precedente e aggiungilo al parametro oclRootPW nel file config.ldif come mostrato di seguito.

# vi /etc/openldap/slapd.d/cn=config.ldif
olcRootPW: {SSHA}1pgok6qWn24lpBkVreTDboTr81rg4QC6

Crea nome di dominio olcSuffix

Ora imposta olcSuffix e imposta il dominio che desideri. Modifica semplicemente la riga che inizia con olcSuffix nel file olcDatabase={2}bdb.ldif come mostrato di seguito.

# vi /etc/openldap/slapd.d/cn=config/olcDatabase={2}bdb.ldif
olcSuffix: dc=thegeekstuff,dc=com

Verifica i file di configurazione

Utilizzare il comando slaptest per verificare il file di configurazione come mostrato di seguito. Questo dovrebbe visualizzare il messaggio "test riuscito" come mostrato di seguito.

# slaptest -u
config file testing succeeded

Potresti ricevere i seguenti messaggi durante il comando precedente, che puoi ignorare per ora.

54a39508 ldif_read_file: checksum error on "/etc/openldap/slapd.d/cn=config/olcDatabase={1}monitor.ldif"
54a39508 ldif_read_file: checksum error on "/etc/openldap/slapd.d/cn=config/olcDatabase={2}bdb.ldif"

Avvia il server LDAP

Avvia il server ldap come mostrato di seguito.

# service slapd start
Checking configuration files for slapd: [WARNING]
config file testing succeeded
Starting slapd:                         [  OK  ]

Verifica la ricerca LDAP

Per verificare che il server ldap sia configurato correttamente, puoi utilizzare il comando seguente e verificare che la voce del dominio sia presente.

# ldapsearch -x -b "dc=thegeekstuff,dc=com"
# extended LDIF
#
# LDAPv3
# base <dc=thegeekstuff,dc=com> with scope subtree
# filter: (objectclass=*)
# requesting: ALL
#
# search result
search: 2
result: 32 No such object
# numResponses: 1

Struttura LDAP di base in base.ldif

L'uso di oggetti OU (unità organizzativa) può aiutare a fornire una struttura aggiuntiva al database LDAP. Se stai pianificando di aggiungere diversi tipi di voci, come utenti, gruppi, computer, stampanti e altro alla directory LDAP, semplifica l'inserimento di ogni tipo di voce nel proprio contenitore.

Per creare queste unità organizzative, puoi creare un file LDIF iniziale come mostrato nell'esempio seguente. In questo esempio, questo file consente di creare il contenitore di base che è dc=thegeekstuff,dc=com e crea due unità organizzative con i nomi utenti e gruppi in quel contenitore.

# cat base.ldif
dn: dc=thegeekstuff,dc=com
objectClass: dcObject
objectClass: organization
o: thegeekstuff.com
dc: thegeekstuff
dn: ou=users,dc=thegeekstuff,dc=com
objectClass: organizationalUnit
objectClass: top
ou: users
dn: ou=groups,dc=thegeekstuff,dc=com
objectClass: organizationalUnit
objectClass: top
ou: groups

Importa la struttura di base usando ldapadd

Ora possiamo importare la struttura di base nella directory LDAP usando il comando ldapadd come mostrato di seguito.

# ldapadd -x -W -D "cn=ramesh,dc=thegeekstuff,dc=com" -f base.ldif
Enter LDAP Password:
adding new entry "dc=thegeekstuff,dc=com"
adding new entry "ou=users,dc=thegeekstuff,dc=com"
adding new entry "ou=groups,dc=thegeekstuff,dc=com"

Verifica la struttura di base usando ldapsearch

Per verificare che le unità organizzative siano state create correttamente, utilizzare il seguente comando ldapsearch.

# ldapsearch -x -W -D "cn=ramesh,dc=thegeekstuff,dc=com" -b "dc=thegeekstuff,dc=com" "(objectclass=*)"
Enter LDAP Password:

L'output del comando precedente visualizzerà tutti gli oggetti nella struttura della directory LDAP.

# extended LDIF
#
# LDAPv3
# base <dc=thegeekstuff,dc=com> with scope subtree
# filter: (objectclass=*)
# requesting: ALL
#
# thegeekstuff.com
dn: dc=thegeekstuff,dc=com
objectClass: dcObject
objectClass: organization
o: thegeekstuff.com
dc: thegeekstuff
# users, thegeekstuff.com
dn: ou=users,dc=thegeekstuff,dc=com
objectClass: organizationalUnit
objectClass: top
ou: users
# groups, thegeekstuff.com
dn: ou=groups,dc=thegeekstuff,dc=com
objectClass: organizationalUnit
objectClass: top
ou: groups
# search result
search: 2
result: 0 Success
# numResponses: 4
# numEntries: 3

Nel prossimo articolo su OpenLDAP, spiegheremo come aggiungere nuovi utenti e gruppi alla directory LDAP.


Linux
  1. CentOS / RHEL 7 :Come installare e configurare telnet

  2. Come installare e configurare Samba in CentOS/RHEL

  3. CentOS / RHEL 4:come installare e configurare il server FTP (vsftpd)

  4. CentOS / RHEL 5:Come installare e configurare il server vsftpd

  5. Come installare e configurare telnet in RHEL / CentOS 5,6

Come installare e configurare HAProxy su CentOS 8 / RHEL 8

Come installare e configurare Checkmk su CentOS 8 / RHEL 8

Come installare e configurare Nagios Core su CentOS 8 / RHEL 8

Come installare e configurare Denyhost in Centos 7 Linux

Come installare e configurare Jenkins su CentOS 8 / RHEL 8

Come installare e configurare GlusterFS su CentOS 7/CentOS 8