280 likes | 461 Vues
LDAP. Raine Brisk. Aiheita. Hakemistot Hakemistot vs. Tietokannat X.500 LDAP – Toiminta Muut vaihtoehdot – kilpailijat Asennus Yhteenveto. Hakemistot #1. Hakemisto on kaikille tuttu Puhelinluettelot Kuvastot Katalogit jne jne Hakemisto on tietyllä tavalla järjestettyä tietoa
E N D
LDAP Raine Brisk
Aiheita • Hakemistot • Hakemistot vs. Tietokannat • X.500 • LDAP – Toiminta • Muut vaihtoehdot – kilpailijat • Asennus • Yhteenveto
Hakemistot #1 • Hakemisto on kaikille tuttu • Puhelinluettelot • Kuvastot • Katalogit jne jne • Hakemisto on tietyllä tavalla järjestettyä tietoa • Offline hakemistot usein vanhetuneita jo ilmestyessään.
Hakemistot #2 • Sähköinen hakemisto • Helposti päivitettävissä - Dynaaminen • Voi sisältää paljon eri tietoja - Joustava • Pääsy ja käyttö voidaan rajata – Turvallisuus • Nopea ja edullinen • Hakuja voi rajata -> Rajatut tulokset
Hakemistot vs. Tietokannat#1 • Erot eivät hyppää silmille • Hakemisto on tietokannan erikoistapaus • Molemmat luokitellun tiedon hallitsemiseen tarkoitettuja keskitettyjä tietovarastoja • Käyttötarkoitukset poikkeavat toisistaan
Hakemistot vs. Tietokannat#2 • Luku-kirjoitussuhde • Hakemistoja luetaan useammin kuin niitä kirjoitetaan tai päivitetään • osoitteita, aikatauluja... • Tietokannoista yleensä toisinpäin
Hakemistot vs. Tietokannat#3 • Tiedon muoto ja sen laajennettavuus • Tietokannan tietotyypit usein ennakkoon määritetty(int, string...) • Mahdollisuus muuttaa tai lisätätä harvinainen • Hakemistoon luotavissa uusia tietotyyppejä (schema)
Hakemistot vs. Tietokannat#4 • Hajautettu hakemistorakenne • Hakemistoissa tieto jaettu puumuotoon • Haarat jaettavissa omille palvelimilleen • Opiskelijat jaettuna osastoittain -> joka osaston tiedot omassa puun haarassaan -> palvelimet osastoilla • Tietokannoissa vastaavan tason hajautus harvinaisempaa -> suorituskyky
Hakemistot vs. Tietokannat#5 • Monistus • Luotettavuus -> Ei vain yhden varassa • Saatavuus -> Yhteyskatkojen sieto • Paikallisuus -> Läheltä parempi suorituskyky • Suorituskyky -> Useampiin kyselyihin vastaus • Synkronointi • Hyväksyttävä fakta ettei kaikki tieto ole aina yhtenäistä – tallennetun tiedon luonne
Hakemistot vs. Tietokannat#6 • Suorituskyky • Hakemistoissa pyritään suorituskyvyn kasvattamiseen • Tieto usein kevyttä -> yhden haun käsittely ei pitäisi viedä paljoa resursseja • Käyttäjäkunta saattaa kasvaa • Puhelinluettelo • Lisää käyttäjiä ja lisää tietoja
Hakemistot vs. Tietokannat#7 • Yhteensopivuus – Standardit • Tietokannoilla eri tapoja jäsentää tietoa ja vastata hakuihin – sovellukset usein ohjelmistokohtaisia, vaikkakin samantyylisiä • Puhuvat eri kieltä • Hakemistoissa standarti protokolla • Puhuvat samaa kieltä • LDAP
X.500 • Syntyessään ensimmäinen todella yleiskäyttöinen hakemisto • Kehittäjien unelmana oli luoda ”HAKEMISTO” • Sinällään joustava ja monipuolinen • Standardit monimutkaisia -> eri implementaatiot eivät olleetkaan täysin yhteensopivia • Ongelmat -> LDAP
LDAP • Ensimmäinen versio 1990-luvun alussa • Nykyinen kokonaisuus on määritelty RFC3377 syyskuu 2002 • TCP • Asiakas ohjelma kysyy ja palvelin vastaa • Jokainen vastaus eri viestissä • Lopetusviestillä ilmoitetaan vastauksen päättyvän
LDAP • Tieto järjestetty hierarkisesti puumalliin • Vain yksi juuri • Useita haaroja • Haaroissa voi olla rinnakkaisia tasoja • Kaikkia tasoja ei ole pakko käyttää • Sovellettavissa helposti yritysten ja järjestöjen käyttöön • X.500-mallinen hierarkia
LDIF • Lightweight Data Interchange Format • Formaatti solmujen esittämän datan esittämiseen • Olioluokkien esittämiseen objectclass-luokat • Atribuuttien käyttäminen vaatii oikeita luokkia • Oliot määritellään skeemoissa (schema)
Kilpailijoita • Toimivat nykyisin melko pitkälti ainakin osin yhteensopivasti LDAPin kanssa • Microsoft Active Directory AD • Novell eDirectory ent. NDS • CCSO Nameserver eli ph – käytössä LTY:ssä.
ASENNUS • OpenLDAP koneelle dmz5 (192.168.1.5) • Mitä siihen tarvittiin? • Monta tuskaista tuntia • Kannattaisi heti uskoa softan valmistajan ohjeita • Asiakasohjelmana käytän Mozilla Thunderbird sähköpostiohjelmaa.
ASENNUS • Ladataan paketit • http://www.openldap.org/software/download/ • Lisäksi tarvitaan Berkeley Database • http://www.oracle.com/technology/software/products/berkeley-db/db/index.html • OpenLDAPista stable versio 2.3.32 • Berkeley DB:stä versio 4.5.20
ASENNUS • Pura paketit ja seuraa valmistajien ohjeita: • Ensin BerkeleyDB • http://www.oracle.com/technology/documentation/berkeley-db/db/ref/build_unix/intro.html • Sitten OpenLDAP • http://www.openldap.org/doc/admin23/quickstart.html
ASENNUS • Tässä kohtaa kiitos viime vuotisen työn tekijälle! • cp /usr/local/BerkeleyDB.4.5/* /usr/lib • cp /usr/local/BerkeleyDB.4.5/include/* /usr/include • Käyttöjärjestelmä ei osaa hakea tarvisemiaan tietoja oikeasta paikasta • Kopioidaan tiedot sinne josta järjestelmä ne löytää
Konfigurointi • Berkeley DB ei vaadi erityistä konfigurointia • Palvelinohjelma slapd pyörii daemonina, eikä juuri pidä ääntä itsestään • /usr/local/etc/openldap/slapd.conf • Ensin määritellään yleiset asetukset • Seuraavaksi jokaista tietokantaa koskevat erikseen
Konfigurointi • Kommentti rivit aloitetaan #-merkillä • Määritellään skeemat – järjestyksellä väliä include /usr/local/etc/openldap/schema/core.schema include /usr/local/etc/openldap/schema/cosine.schema include /usr/local/etc/openldap/schema/inetorgperson.schema include /usr/local/etc/openldap/schema/nis.schema • Seuraavaksi tiedostossa on rivejä joilla määritellään pääsyä palveluun, oletuksena se on kaikkien luettavissa joten rivit voi jättää kommentteihin.
Konfigurointi • Määritellään tietokannan tyyppi DBD database bdb • Kannan DN jonka mukaan määritellään mihin kantaan haku kohdistuu suffix "dc=lahiverkot,dc=net” • Pääkäyttäjä jolla on oikeus kirjoittaa tietoja rootdn "cn=root,dc=lahiverkot,dc=net” • Salasana MD% hash koodattuna rootpw {MD5}5+lBsfCfJmVAxngNtR1fWA== • Sijanti jossa kannan tiedot sijaitsevat ja johon niitä kirjoitetaan directory /usr/local/var/openldap-data
Konfigurointi • Viimeiseksi indeksit ja käytettävät olioluokat index cn,sn,title,mail,uid pres,eq,approx,sub index objectClass eq • Tähän kohtaa tulisi jatkoksi toisen tietokannan määritykset jos sellainen olisi
KäynnistysKäyttö • Käynnistys • /usr/local/libexec/slapd • Lisäys • ldapadd -x -D "cn=root,dc=lahiverkot,dc=net" -w salasana -f /usr/local/etc/openldap/lisaa.lahiverkot.ldif • Etsintä • ldapsearch -LLL -b "dc=lahiverkot,dc=net" "(mail=*@*)" sn
Käyttö • Muokkaa • ldapmodify –x –W –D ”cn=root,dc=lahiverkot,dc=net” –f muokkaa.ldif • Poista • ldapdelete –v –x –D ”cn=root,dc=lahiverkot,dc=net” –W ”cn=Brian Kottarainen,dc=lahiverkot,dc=net”
Ukkoslintu • Kokeilin ohjelman toimivuutta käyttämällä asiakasohjelmana Mozilla Thunderbird 1.5 • Tools Account Settings • Sivupaneelista Composition & Addressing • Use a Different LDAP Server • Edit Directories • Add: palvelimen nimi, osoite, kannan dn • Ja kokeilemaan!
Yhteenveto • Kattava ja joustava palvelu, toimiva ja käytännössä toimiva standardi on aina iloinen asia • Tyydyttää tarpeen johon se on luotu, ei kuitenkaa missään nimessä korvaa tietokantoja • Helppo asentaa ja ylläpitää jos tietää mitä tekee – niinhän ne aina