OpenLDAP-2.6.8

Introduksjon til OpenLDAP

OpenLDAP pakken gir en åpen kildeimplementering av Lightweight Directory Access Protocol.

[Notat]

Notat

Utviklingsversjoner av BLFS kan ikke bygge eller kjøre noen pakker riktig hvis LFS eller avhengigheter har blitt oppdatert siden den siste stabile versjonene av bøkene.

Pakkeinformasjon

Ytterligere Nedlastinger

OpenLDAP Avhengigheter

Anbefalt

Valgfri

GnuTLS-3.8.7.1, unixODBC-2.3.12, MariaDB-11.4.3 eller PostgreSQL-17.0 eller MySQL, OpenSLP, WiredTiger, og Berkeley DB (deprecated) (for slapd, også avviklet)

Installasjon av OpenLDAP

[Notat]

Notat

Hvis du bare trenger å installere klientsiden ldap* binærfiler, tilsvarende manualsider, biblioteker og deklarasjonsfiler (referert til som en «bare klient» installering), kjør disse kommandoene i stedet for de følgende (ingen testpakke tilgjengelig):

patch -Np1 -i ../openldap-2.6.8-consolidated-1.patch &&
autoconf &&

./configure --prefix=/usr        \
            --sysconfdir=/etc    \
            --disable-static     \
            --enable-dynamic     \
            --disable-debug      \
            --disable-slapd &&

make depend &&
make

Deretter, som root bruker:

make install

Det bør være en dedikert bruker og gruppe til å ta kontroll over slapd nissen etter at den er startet. Utfør følgende kommandoer som root bruker:

groupadd -g 83 ldap &&
useradd  -c "OpenLDAP Daemon Owner" \
         -d /var/lib/openldap -u 83 \
         -g ldap -s /bin/false ldap

Installer OpenLDAP ved å kjøre følgende kommandoer:

patch -Np1 -i ../openldap-2.6.8-consolidated-1.patch &&
autoconf &&

./configure --prefix=/usr         \
            --sysconfdir=/etc     \
            --localstatedir=/var  \
            --libexecdir=/usr/lib \
            --disable-static      \
            --disable-debug       \
            --with-tls=openssl    \
            --with-cyrus-sasl     \
            --without-systemd     \
            --enable-dynamic      \
            --enable-crypt        \
            --enable-spasswd      \
            --enable-slapd        \
            --enable-modules      \
            --enable-rlookups     \
            --enable-backends=mod \
            --disable-sql         \
            --disable-wt          \
            --enable-overlays=mod &&

make depend &&
make

Testene er skjøre, og feil kan føre til at testene avbrytes før ferdigstillelse. Noen feil kan oppstå på grunn av tidsproblemer. Testene tar rundt en time, og tiden er CPU uavhengig pga forsinkelser i testene. På de fleste systemer vil testene kjøre opp til test065-proxyauth for mdb testen. For å teste resultatene, kjør: make test.

Nå, som root bruker:

make install &&

sed -e "s/\.la/.so/" -i /etc/openldap/slapd.{conf,ldif}{,.default} &&

install -v -dm700 -o ldap -g ldap /var/lib/openldap     &&

install -v -dm700 -o ldap -g ldap /etc/openldap/slapd.d &&
chmod   -v    640     /etc/openldap/slapd.{conf,ldif}   &&
chown   -v  root:ldap /etc/openldap/slapd.{conf,ldif}   &&

install -v -dm755 /usr/share/doc/openldap-2.6.8 &&
cp      -vfr      doc/{drafts,rfc,guide} \
                  /usr/share/doc/openldap-2.6.8

Parameterforklaringer

--disable-static: Denne bryteren forhindrer installasjon av statiske versjoner av bibliotekene.

--disable-debug: Denne bryteren deaktiverer feilsøkingskoden i OpenLDAP.

--enable-dynamic: Denne bryteren tvinger OpenLDAP biblioteker å være dynamisk koblet til de kjørbare programmene.

--enable-crypt: Denne bryteren gjør det mulig å bruke crypt(3) passord.

--enable-spasswd: Denne bryteren aktiverer SASL passordbekreftelse.

--enable-modules: Denne bryteren aktiverer dynamisk modulstøtte.

--enable-rlookups: Denne bryteren aktiverer omvendt oppslag av klientvertsnavn.

--enable-backends: Denne bryteren aktiverer alle tilgjengelige bakstykker.

--enable-overlays: Denne bryteren aktiverer alle tilgjengelige overlegg.

--disable-sql: Denne bryteren eksplisitt deaktiverer SQL bakstykke. Utelat denne bryteren hvis det er en SQL server installert og du skal bruke en SQL bakstykke.

--disable-wt: Denne bryteren eksplisitt deaktiverer WiredTiger bakstykke. Utelat denne bryteren hvis WiredTiger er installert og du skal bruke en WiredTiger bakstykke.

--libexecdir=/usr/lib: Denne bryteren kontrollerer hvor /usr/lib/openldap mappen er installert. Alt i den mappen er et bibliotek, så det hører hjemme under /usr/lib i stedet for /usr/libexec.

--enable-slp: Denne bryteren aktiverer SLPv2 støtte. Bruk den hvis du har installert OpenSLP.

--disable-versioning: Denne bryteren deaktiverer symbolversjonering i OpenLDAP biblioteker. Standard er å ha symbolversjonering. Merk at hvis du har bygde applikasjoner som bruker denne pakken med symbolversjonering, og fjerner symbolene, kan det hende at applikasjonene ikke kjører.

[Notat]

Notat

Du kan kjøre ./configure --help for å se om det er andre brytere du kan sende til configure kommandoen for å aktivere andre alternativer eller avhengighetspakker.

install ..., chown ..., og chmod ...: Å ha slapd konfigurasjonsfiler og ldap databaser i /var/lib/openldap lesbart av alle er et SIKKERHETSPROBLEM, spesielt siden en fil lagrer administratorpassord i REN TEKST. Det er derfor modus 640 og root:ldap eierskap ble brukt. Eieren er root, så bare root kan endre filen, og gruppen er ldap, slik at gruppen som eier slapd nissen kan lese, men ikke endre filen i tilfelle et sikkerhetsbrudd.

Konfigurere OpenLDAP

Konfigurasjonsfiler

  • For LDAP klient: /etc/openldap/ldap.conf og ~/.ldaprc

  • For LDAP servere brukes to konfigurasjonsmekanismer: konfigurasjonsfilen for eldre versjoner /etc/openldap/slapd.conf og den anbefalte slapd-config systemet, ved hjelp av en LDIF database lagret i /etc/openldap/slapd.d.

Konfigurasjonsinformasjon

Konfigurering av slapd servere kan være komplekse. Sikring av LDAP mappen, spesielt hvis du lagrer ikke-offentlig data som passorddatabaser kan også være en utfordrende oppgave. For å sette opp OpenLDAP, må du endre enten /etc/openldap/slapd.conf filen (gammel metode), eller /etc/openldap/slapd.ldif filen og deretter bruke ldapadd for å opprette LDAP konfigurasjonsdatabasen i /etc/openldap/slapd.d (anbefalt av OpenLDAP dokumentasjonen).

[Advarsel]

Advarsel

Instruksjonene ovenfor installerer en tom LDAP struktur og en standard /etc/openldap/slapd.conf fil, som er egnet for å teste bygget og andre pakker ved bruk av LDAP. Ikke bruke dem på en produksjonsserver.

Ressurser for å hjelpe deg med emner som å velge en mappekonfigurasjon, bakstykke og database definisjoner, tilgangskontrollinnstillinger, kjøre som en annen bruker enn root og sette opp et chroot miljø inkluderer:

Oppstartsskript

For å automatisere oppstarten av LDAP serveren ved oppstart av systemet, installer /etc/rc.d/init.d/slapd init skriptet inkludert i blfs-bootscripts-20240913 pakken ved å bruke følgende kommando:

make install-slapd
[Notat]

Notat

Du må endre /etc/sysconfig/slapd for å inkludere parametrene som trengs for din spesifikke konfigurasjon. Se slapd manside for parameterinformasjon.

Teste Konfigurasjonen

Start LDAP serveren med init skriptet:

/etc/rc.d/init.d/slapd start

Bekreft tilgangen til LDAP serveren med følgende kommando:

ldapsearch -x -b '' -s base '(objectclass=*)' namingContexts

Det forventede resultatet er:

# extended LDIF
#
# LDAPv3
# base <> with scope baseObject
# filter: (objectclass=*)
# requesting: namingContexts
#

#
dn:
namingContexts: dc=my-domain,dc=com

# search result
search: 2
result: 0 Success

# numResponses: 2
# numEntries: 1

Innhold

Installerte Programmer: ldapadd, ldapcompare, ldapdelete, ldapexop, ldapmodify, ldapmodrdn, ldappasswd, ldapsearch, ldapurl, ldapvc, ldapwhoami, slapacl, slapadd, slapauth, slapcat, slapd, slapdn, slapindex, slapmodify, slappasswd, slapschema, og slaptest
Installerte Biblioteker: liblber.so, libldap.so, og flere under /usr/lib/openldap
Installerte Mapper: /etc/openldap, /{usr,var}/lib/openldap, og /usr/share/doc/openldap-2.6.8

Korte Beskrivelser

ldapadd

åpner en tilkobling til en LDAP server, binder og legger til oppføringer

ldapcompare

åpner en tilkobling til en LDAP server, binder og utfører en sammenligning med spesifiserte parametere

ldapdelete

åpner en tilkobling til en LDAP server, binder og sletter en eller flere oppføringer

ldapexop

utsteder den utvidede LDAP operasjonen spesifisert av oid eller et av de spesielle søkeordene whoami, cancel, eller refresh

ldapmodify

åpner en tilkobling til en LDAP server, binder og modifiserer oppføringer

ldapmodrdn

åpner en tilkobling til en LDAP server, binder og modifiserer RDN for oppføringer

ldappasswd

er et verktøy som brukes til å angi passordet til en LDAP bruker

ldapsearch

åpner en tilkobling til en LDAP server, binder og utfører et søk med spesifiserte parametere

ldapurl

er en kommando som gjør det mulig å enten komponere eller dekomponere LDAP URIs

ldapvc

verifiserer LDAP anerkjennelser

ldapwhoami

åpner en tilkobling til en LDAP server, binder og viser whoami informasjon

slapacl

brukes til å sjekke atferden til slapd ved å verifisere tilgang til mappedata i henhold til tilgangskontrollen liste direktiver definert i konfigurasjonen

slapadd

brukes til å legge til oppføringer spesifisert i LDAP Directory Interchange Format (LDIF) til en LDAP database

slapauth

brukes til å sjekke oppførselen til slapd i kartlegging av identiteter for autentisering og autorisasjonsformål, som spesifisert i slapd.conf

slapcat

brukes til å generere LDAP LDIF utdata basert på innholdet i en slapd database

slapd

er den frittstående LDAP serveren

slapdn

sjekker en liste over strengrepresenterte DN-er basert på skjemasyntaks

slapindex

brukes til å regenerere slapd indekser basert på gjeldende innhold i en database

slapmodify

modifiserer oppføringer i en slapd database

slappasswd

er OpenLDAP passordverktøy

slapschema

brukes til å kontrollere skjemasamsvar for innholdet i en slapd database

slaptest

sjekker om slapd.conf filen er ødelagt

liblber.so

er et sett med Lightweight Basic Encoding Rules rutiner. Disse rutinene brukes av LDAP biblioteksrutinene til å kode og dekode LDAP protokollelementer som bruker (litt forenklet) Basic Kodingsregler definert av LDAP. De brukes vanligvis ikke direkte av et LDAP applikasjonsprogram bortsett fra ved håndtering av kontroller og utvidet drift

libldap.so

støtter LDAP programmene og gir funksjonalitet for andre programmer som samhandler med LDAP