Innledning
LDAP er Lightweight Directory Access Protocol. LDAP er en global katalogtjeneste, industri-standard protokoll, som er basert på klient-tjener og kjører på et lag over TCP /IP-stakken. LDAP gir et anlegg for å koble til, tilgang, endre og søke på internett katalogen.
LDAP-servere inneholde informasjon som er organisert i form av en katalogtreet. Kundene spør server for å gi informasjon eller for å utføre noen operasjon på en bestemt informasjon. Serveren svarer klienten ved å gi nødvendig informasjon om den har en, eller den henviser kunden til en annen server for handling på nødvendig informasjon. Klienten deretter overtar ønsket informasjon fra en annen server.
trestruktur av katalogen er opprettholdt samme i alle de deltakende servere. Dette er et fremtredende trekk ved LDAP katalogtjeneste. Derfor, uansett hvilken server er referert til av klienten, klienten alltid får nødvendig informasjon i en feilfri måte. Her bruker vi LDAP til å autentisere IBM DB2 som en erstatning av operativsystemet autentisering
Det finnes to typer LDAP.
Plug-in
La oss se hvordan du konfigurerer en gjennomsiktig LDAP.
Konfigurering gjennomsiktig LDAP
Til å begynne med konfigurasjonen av gjennomsiktig LDAP, må du konfigurere LDAP-serveren.
< h3> LDAP-serverkonfigurasjon
Lag en SLAPD.conf fil som inneholder all informasjon om brukere og gruppeobjekt i LDAP. Når du installerer LDAP-server, som standard er det konfigurert med grunnleggende LDAP katalogtreet på din maskin.
I tabellen nedenfor viser filen konfigurasjon etter modifisering.
Teksten uthevet med gult koden boks betyr for følgende:.
DBA bruker-id = "db2my1", group = "db1my1adm", passord = "db2my1" Admin bruker-id = "my1adm", group = "dbmy1ctl" Anmeldelser # basen dn: example.com dn: dc = eksempel, dc = com st: eksempel o: eksempel object: organisasjon object: dcObject # pc boks db dn: dc = db697, dc = eksempel, dc = com st: db697 o: db697 object: organisasjon object: dcObject # # Gruppe: db Lagre filen ovenfor med navn '/var/lib/slapd.conf', deretter utføre denne filen ved følgende kommando for å legge disse verdiene inn LDAP-server. Dette er en linux kommando; ikke en db2 kommando. Etter registrering av DB2-brukere og DB2-gruppen på LDAP-server, pålogging til den aktuelle brukeren hvor du har installert forekomst og database. Du må konfigurere LDAP-klient for å bekrefte overfor klienten der serveren er plassert, det være seg ekstern eller lokal. LDAP-klienten konfigurasjonen er lagret i filen 'ldap.conf '. Det er to filer som er tilgjengelige for konfigurasjonsparametere, er en vanlig og den andre er spesifikke. Du bør finne den første på '/etc/ldap.conf' og sistnevnte ligger på '/etc/openldap/ldap.conf'. Følgende data er tilgjengelig i felles LDAP-klient konfigurasjonsfilen Du må endre plasseringen av server og domene informasjon i henhold til DB2-konfigurasjon. Hvis vi bruker server i samme system da nevne det som "localhost" på "vert" og "base" kan du konfigurere som er nevnt i "SLAPD.conf 'fil for LDAP-serveren. Pluggable Authentication Model (PAM) er en API for autentiseringstjenester. Dette er felles grensesnitt for LDAP-godkjenning med en kryptert passord og spesial LDAP objekt av typen posixAccount. Alle LDAP objekter av denne typen representerer en abstraksjon av en konto med bærbar Operating System Interface (POSIX) attributter. Network Security Services (NSS) er et sett med biblioteker for å støtte kryssplattform utvikling av sikkerhetsaktivert klient og serverprogrammer. Dette omfatter bibliotekene som SSL, TLS, PKCS S /MIME og andre sikkerhetsstandarder. Du må angi basen DN for dette grensesnittet, og ytterligere to kartlegging attributter. OpenLDAP klient konfigurasjonsfilen inneholder oppføringene nedenfor:. Till dette du bare definerer vert for LDAP tjener og basen DN Etter at du har konfigurert LDAP Server og LDAP-klient, bekrefter både for kommunikasjon Trinn 1 Bilde:. Sjekk din lokale LDAP-serveren kjører. Ved hjelp av kommandoen nedenfor: Denne kommandoen bør listen LDAP deamon som representerer din LDAP-serveren: Twitter /usr /lib /openladp /slapd -h ldap: ///-u ldap -g ldap -o slp = på < p> Dette indikerer at du LDAP-serveren kjører og venter på forespørsel fra kunder. Hvis det ikke er slik prosess for tidligere kommandoer du kan begynne LDAP-server med "rcldap 'kommando. Når serveren starter, kan du overvåke dette i filen' /var /log /meldinger /etter utstede følgende kommando. ldapsearch kommandoen åpner en forbindelse til en LDAP-server, binder seg til det og utfører en søket som kan spesifiseres ved hjelp av spesielle parametre '-x' koble til LDAP-serveren med en enkel autentiseringsmekanisme ved hjelp av -x parameter i stedet for en mer kompleks mekanisme som Simple Authentication and Security Layer (SASL) Anmeldelser ldapsearch - x LDAP-serveren skal svare med et svar gitt nedenfor, som inneholder alle dine LDAP oppføringer i en LDAP Data Interchange Format (LDIF) Etter å ha jobbet med LDAP server og klient, må du konfigurere vår DB2-database for bruk med LDAP. La oss diskutere hvordan du kan installere og konfigurere databasen for å bruke vår LDAP miljø for DB2 brukergodkjenningsprosessen. IBM gir en gratis pakke med LDAP plug-ins for DB2. DB2-pakken inkluderer tre DB2 sikkerhets plug-ins for hver av følgende: Avhengig av dine behov, kan du bruke noen av de tre plug-ins eller alle av dem. Dette tillegget støtter ikke miljøer der noen brukere er definert i LDAP og andre i operativsystemene. Hvis du velger å bruke LDAP-plug-ins, må du definere alle brukere knyttet til databasen i LDAP-serveren. Det samme prinsippet gjelder for gruppen plug-in. Du må bestemme hvilken plug-ins er obligatoriske for vårt system. Klientautentiserings plug-ins som brukes i situasjoner hvor bruker-ID og passord validering levert på en CONNECT eller legge uttalelse skjer på klientsystemet. Så databasesystemet konfigurasjonsparametere SRVCON_AUTH eller autentisering må settes til verdien kunden. Klienten autentisering er vanskelig å sikre og anbefales vanligvis ikke. Server plug-in er generelt anbefalt fordi den gir en server side validering av bruker-ID og passord, hvis klienten utfører en CONNECT eller ATTACH utsagn, og dette er sikker måte. Serveren plug-in gir også en måte å kartlegge LDAP bruker-ID for DB2 risasjons-IDer. Nå kan du starte installasjon og konfigurering av DB2 tilleggsmoduler for sikkerhet, trenger du å tenke på den nødvendige kataloginformasjon treet for DB2. DB2 benytter indirekte autorisasjon som betyr at en bruker tilhører en gruppe, og denne gruppen ble gitt med færre myndigheter. Du må definere alle DB2-brukere og DB2-grupper i LDAP-katalogen LDIF fil openldap.ldif bør inneholde koden under. Lag en fil som heter "db2.ldif 'og lim eksempelet ovenfor inn i den. Ved hjelp av denne filen, legge de definerte strukturer til LDAP-katalogen. Hvis du vil legge til DB2-brukere og DB2-grupper til LDAP-katalog, må du binde brukeren som "rootdn 'til LDAP-serveren for å få den eksakte privilegier. Utfør følgende syntaxes å fylle LDAP informasjon katalog med alle våre objekter definert i LDIF filen 'db2.ldif' Utfør søkeresultat med mer parameter Opprette eksempel for våre LDAP brukeren db2inst2. Denne brukeren krever hjemmeområde med to tomme filer inne i hjemmekatalogen. Før du oppretter en ny forekomst, må du opprette en bruker som vil være eier av forekomsten. Etter å skape forekomsten bruker, bør du ha for å opprette filen '.profile' og '.login' i brukerens hjemmekatalog, vil som endres av DB2. For å opprette denne filen i katalogen, utføre følgende kommando: Du har registrert alle brukere og grupper relatert med DB2 i LDAP-katalogen, nå kan du opprette en forekomst med navnet 'db2inst2 "med forekomsteier id' db2inst2" og bruke den beskyttede bruker-id 'db2fenc1', som er nødvendig for å kjøre brukerdefinerte funksjoner (UDFer) eller lagrede prosedyrer. Nå sjekke forekomsten hjemmekatalog. Du kan se ny underkatalog kalt "sqllib 'og .profile og .login filer tilpasset for DB2-bruk. Kopier den nødvendige LDAP plug-ins til den aktuelle DB2 katalogen: Once plug-ins er kopiert til den angitte katalogen, du tonet å logge inn på DB2 forekomsteier og endre konfigurasjonen databasesystemet til å bruke disse plug-ins Anmeldelser Su -. db2inst2 db2inst2> db2 update dbm cfg hjelp svrcon_pw_plugin IBMLDAPauthserver db2inst2> db2 update dbm cfg hjelp group_plugin IBMLDAPgroups db2inst2> db2 update dbm cfg hjelp autentisering SERVER_ENCRYPT db2inst2> db2stop db2inst2> db2start Denne endringen trer i kraft etter at du starter DB2-forekomst. Når du har startet eksempel, må du installere og konfigurere hoved DB2 LDAP konfigurasjon fil som heter "IBMLDAPSecurity.ini" for å gjøre DB2 plug-ins jobbe med gjeldende LDAP konfigurasjon. IBMLDAPSecurity.ini filen inneholder Anmeldelser; ------------------------------------------------- ----------; SERVEREN messige verdier; ---------------------------------------------- -------------; Navn på din LDAP server (e).; Dette er en plass separert liste over LDAP-serveradresser,; med et valgfritt portnummer for hver en:; host1 [: port] [vert2: [port2] ...]; Standard portnummer er 389 eller 636 hvis SSL er aktivert. LDAP_HOST = my.ldap.server; ------------------------------------------ -----------------; BRUKERmessige verdier; ---------------------------------------------- ------------- rs; LDAP objekt klasse brukes for bruk USER_OBJECTCLASS = posixAccount; LDAP-bruker attributt som representerer "brukerid"; Dette attributtet er kombinert med USER_OBJECTCLASS og; USER_BASEDN (hvis spesifisert) å konstruere et LDAP-søk; filtrere når en bruker utsteder en DB2 CONNECT uttalelse med en; ukvalifisert brukerid. For eksempel bruker standardverdiene; i denne konfigurasjonsfilen (db2 koble til mydb brukeren bob, ved hjelp bobpass) resulterer i følgende søkefilter: OrgPerson) (uid = bob); &(object = inet USERID_ATTRIBUTE = uid representerer DB2 autorisasjon ID, LDAP bruker attributt, AUTHID_ATTRIBUTE = uid; ---------------------------- -------------------------------; GROUP messige verdier; -------------- --------------------------------------------- ps; LDAP objektklassen brukes for grou GROUP_OBJECTCLASS groupOfNames på = representerer navnet på gruppen; LDAP-gruppe attributt th GROUPNAME_ATTRIBUTE = cn; Bestemmer metoden som brukes for å finne gruppemedlemskap, for en bruker Mulige verdier er:; SEARCH_BY_DN - Søk etter grupper som liste brukeren. . som, et medlem Medlemskap er indikert av; gruppe attributtet definert som; GROUP_LOOKUP_ATTRIBUTE; USER_ATTRIBUTE - En brukers grupper er oppført som attributter;... av brukerobjektet selv Søk etter den, bruker attributtet definert som TRIBUTE å få grupper; GROUP_LOOKUP_AT GROUP_LOOKUP_METHOD = SEARCH_BY_DN; GROUP_LOOKUP_ATTRIBUTE; Navn på attributtet brukes til å bestemme gruppemedlemskap, slik det er beskrevet ovenfor. llGroups; GROUP_LOOKUP_ATTRIBUTE = ibm-a GROUP_LOOKUP_ATTRIBUTE = medlem Nå finne filen IBMLDAPSecurity.ini fil i gjeldende forekomstkatalogen. Kopiere prøve innholdet over i samme Nå må du starte DB2-forekomst, ved hjelp av to syntaxes gitt nedenfor. På dette punktet, hvis du prøver 'db2start' kommando, du vil få sikkerhet feilmelding. Fordi, er ikke DB2 sikkerhetskonfigurasjonen ennå konfigurert riktig for din LDAP miljøet. Hold LDAP_HOST navn hendig, som er konfigurert i slapd.conf fil. Nå redigere IMBLDAPSecurity.ini fil og skriv inn LDAP_HOST navn. Den LDAP_HOST navn i begge de nevnte filene må være identisk Innholdet i filen som vist nedenfor. Når du har endret disse verdiene, tar LDAP umiddelbart effekt og DB2-miljøet med LDAP fungerer perfekt. Du kan logge ut og logge inn igjen til "db2inst2 'bruker. Nå forekomsten arbeider med LDAP-katalogen.
ldapadd r- -D "cn = sjef, dc = eksempel, dc = com" -W -f /var/lib/slapd.conf
LDAP-klient konfigurasjon
# Fil: /etc/ldap.conf # Filen inneholder mange flere oppføringer og mange av dem # er kommentarer. Du viser bare de interessante verdier for nå vert localhost basen dc = eksempel, dc = com ldap_version 3 pam_password krypten pam_filter object = posixAccount nss_map_attribute uniqueMember medlem nss_base_passwd dc = eksempel, dc = com nss_base_shadow dc = eksempel, dc = com nss_base_group dc = eksempel dc = no
Vert localhost basen dc = eksempel, dc = no
Validating OpenLDAP miljø
ps -ef | grep-ldap
Rcldap starte
tail -f /var /log /meldinger
Testing tilkobling til LDAP-serveren med ldapsearch
# utvidet LDIF # # LDAPv3 # basen. < > med omfanget treet # filter: (object = *) # ber: ALL # example.com dn: dc = eksempel, dc = com st: eksempel o: eksempel object: organisasjon object: dcObject # søkeresultat søk: 2 resultat: 0 Suksess # numResponses: 2 # numEntries: 1
Konfigurering av DB2
Plug-ins
Konfigurere DB2 og LDAP interaksjons
server side autentisering
klientsiden autentisering
gruppeoppslag
Bilde
# # LDAP root objekt # eksempel. com # dn: dc = eksempel, dc = com st: eksempel o: eksempel object: organisasjon object: dcObject # # DB2 grupper # dn: cn = dasadm1, dc = eksempel, dc = com cn: dasadm1 object: top object: posixGroup gidNumber: 300 object: groupOfNames medlem: uid = dasusr1, cn = dasadm1, dc = eksempel, dc = com memberUid: dasusr1 dn: cn = db2grp1, dc = eksempel, dc = com cn: db2grp1 object: top object: posixGroup gidNumber: 301 object: groupOfNames medlem: uid = db2inst2, cn = db2grp1, dc = eksempel, dc = com memberUid: db2inst2 dn: cn = db2fgrp1, dc = eksempel, dc = com cn: db2fgrp1 object: top object: posixGroup gidNumber: 302 object : groupOfNames medlem: uid = db2fenc1, cn = db2fgrp1, dc = eksempel, dc = com memberUid: db2fenc1 # # DB2-brukere # dn: uid = dasusr1, cn = dasadm1, dc = eksempel, dc = com cn: dasusr1 sn: dasusr1 uid: dasusr1 object: top object: inetOrgPerson object: posixAccount uidNumber: 300 gidNumber: 300 loginShell: /bin /bash homeDirectory: /home /dasusr1 dn: uid = db2inst2, cn = db2grp1, dc = eksempel, dc = com cn: db2inst2 sn: db2inst2 uid: db2inst2 object: top object: inetOrgPerson object: posixAccount uidNumber: 301 gidNumber: 301 loginShell: /bin /bash homeDirectory: /home /db2inst2 dn: uid = db2fenc1, cn = db2fgrp1, dc = eksempel, dc = com cn: db2fenc1 sn: db2fenc1 uid: db2fenc1 object: top object: inetOrgPerson object: posixAccount uidNumber: 303 gidNumber: 303 loginShell: /bin /bash homeDirectory: /home /db2fenc1
ldapadd -x -D "cn = sjef, dc = eksempel , dc = com "-W -f < banen > /db2.ldif
ldapsearch -x | mer
Klar filsystemet for DB2 bruk
mkdir /home /db2inst2 mkdir /home/db2inst2/.login mkdir /home/db2inst2/.profile
/opt/ibm/db2/V10.1/instance/db2icrt -u db2fenc1 db2inst2 DBI1070I Program db2icrt fullført.
Konfigurering autentiseringsfelles-ins for LDAP-støtte i DB2
cp //
Cp //db2_ldap_pkg/IBMLDAPSecurity.ini /home /db2inst2 /sqllib /cfg /
db2inst2 > db2stop db2inst2 > db2start
Tilpasse begge konfigurasjoner
; ------------------- ----------------------------------------; SERVEREN messige verdier; ---------------------------------------------- ------------- LDAP_HOST = localhost; --------------------------------- --------------------------; BRUKERmessige verdier ----------------------------; ------------------ ------------- USER_OBJECTCLASS = posixAccount USER_BASEDN = dc = eksempel, dc = com USERID_ATTRIBUTE = uid AUTHID_ATTRIBUTE = uid; ------------------ -----------------------------------------; GROUP messige verdier; ---------------------------------------------- ------------- GROUP_OBJECTCLASS = groupOfNames GROUP_BASEDN = dc = eksempel, dc = com GROUPNAME_ATTRIBUTE = cn GROUP_LOOKUP_METHOD = SEARCH_BY_DN GROUP_LOOKUP_ATTRIBUTE = medlem