ct30a6800 lähiverkot -erikoistyökurssi
DESCRIPTION
CT30A6800 Lähiverkot -erikoistyökurssi. LDAP Jouko Rouhiainen 2007-2008. Sisältö. Johdanto Hakemistot LDAP Vaihtoehtoja OpenLDAP Lopetus. Johdanto. Lightweight Directory Access Protocol Protokolla hakemistopalvelujen kyseilyihin ja muokkaukseen. Hakemisto. Erikoistunut tietokanta - PowerPoint PPT PresentationTRANSCRIPT
CT30A6800 Lähiverkot -
erikoistyökurssi
LDAP
Jouko Rouhiainen
2007-2008
Jouko Rouhiainen26.2.2008
CT30A6800 Lähiverkot -erikoistyökurssi
Sisältö
Johdanto
Hakemistot
LDAP
Vaihtoehtoja
OpenLDAP
Lopetus
Jouko Rouhiainen26.2.2008
CT30A6800 Lähiverkot -erikoistyökurssi
Johdanto
Lightweight Directory Access Protocol
Protokolla hakemistopalvelujen kyseilyihin ja muokkaukseen
Jouko Rouhiainen26.2.2008
CT30A6800 Lähiverkot -erikoistyökurssi
Hakemisto
Erikoistunut tietokanta
Offline-hakemistot vs. Online-hakemistot– Online-hakemistot ovat dynaamisia– Online-hakemistot ovat joustavia– Online-hakemistot voidaan turvata– Online-hakemistot voidaan personalisoida
Jouko Rouhiainen26.2.2008
CT30A6800 Lähiverkot -erikoistyökurssi
Hakemisto vs. tietokanta
Hakemisto lukupainotteinen
Hakemistot käsittelevät yhtä operaatiota yhden hakemistokohteen kanssa kerrallaan
Hakemistoja kannattaa käyttää, kun kirjoitetaan vähän ja luetaan verkon yli
Jouko Rouhiainen26.2.2008
CT30A6800 Lähiverkot -erikoistyökurssi
LDAP - historia
1990: X.500-standardi– Yksi ensimmäisistä yleiskäyttöisistä
hakemistojärjestelmistä– Innovatiivinen, mutta monimutkainen
1993: LDAPv1– Kehitettiin korvaamaan X.500 DAP– Muodostui itsenäiseksi hakemistopalveluksi– Uusin versio, LDAPv3, vuonna 1997
Jouko Rouhiainen26.2.2008
CT30A6800 Lähiverkot -erikoistyökurssi
Mikä on LDAP?
Hakemiston sisäänpääsyprotokolla
Kevyt, tehokas, helppo toteuttaa ja paljon toiminnallisuutta
Toimii TCP/IP:n päällä
Neljä mallia ohjaamassa hakemiston käyttöä:
LDAP-tietomalli, LDAP-nimeämismalli, LDAP-toiminnallisuusmalli ja LDAP-tietoturvamalli
Jouko Rouhiainen26.2.2008
CT30A6800 Lähiverkot -erikoistyökurssi
LDAP-tietomalli
Määrittää tietotyypit ja tiedon perusyksiköt
Merkintä (entry): kokoelma tietoa oliosta
Merkinnät koostuvat attribuuteista
Syntaksi kuvaa datatyypit attribuuteille
Jouko Rouhiainen26.2.2008
CT30A6800 Lähiverkot -erikoistyökurssi
LDAP-nimeämismalli
Kuinka organisoida ja viitata hakemiston tietoja
Hakemistohierarkia lähes kuin UNIX-tiedostojärjestelmä
Erot:– LDAP:ssa ei voi säilöä tietoa juurisolmuun– LDAP:ssa solmut voivat olla sekä tiedosto että kansio– Nimeäminen
• LDAP: cn=Jouko Rouhiainen, dc=lut, dc=fi• UNIX: /var/lib/tekstia.txt
DN (Distinguished Names) viittaavat merkintöihin
Jouko Rouhiainen26.2.2008
CT30A6800 Lähiverkot -erikoistyökurssi
LDAP-toiminnallisuusmalli
Miten tietoon päädään käsiksi ja miten päivitetään hakemistossa
9 protokollaoperaatiota kolmessa kategoriassa– Kuulusteluoperaatiot
• Search ja compare– Päivitysoperaatiot
• Add, delete, modify ja modify DN (rename)– Autentikointi- ja kontrollioperaatiot
• Bind, unbind ja abandon
Jouko Rouhiainen26.2.2008
CT30A6800 Lähiverkot -erikoistyökurssi
LDAP-tietoturvamalli
Kuinka tieto voidaan suojata
Autentikointissa yksinkertaisimmillaan selkokielinen salasanan lähetys
Parempaa tietoturvaa käyttäen SASL (Simple Authentication and Security Layer), SSL (Secure Sockets Layer) ja TLS (Transport Layer Security)
Standardissa ei pääsynhallintamallia, toteutettu lisäyksissä
Jouko Rouhiainen26.2.2008
CT30A6800 Lähiverkot -erikoistyökurssi
Miten LDAP toimii?
Asiakas Palvelin
Hakuoperaatio
Ensimmäinen merkintä
Toinen merkintä
N. merkintä
Tuloskoodi
...
Jouko Rouhiainen26.2.2008
CT30A6800 Lähiverkot -erikoistyökurssi
Vaihtoehtoja
DSML (Directory Service Markup Language) käyttää XML-pohjaista esitystapaa kommunikoinnissa hakemistopalvelinten kanssa
CSCO Nameserver, ph-protokolla, 1990-luvun alussa yleinen hakemistojärjestelmä
WHOIS on TCP-pohjainen protokolla tietopalvelujen tarjoamiseen
Jouko Rouhiainen26.2.2008
CT30A6800 Lähiverkot -erikoistyökurssi
OpenLDAP
Tukee LDAPv3:a, mahdollistaa vahvan salauksen, tiedon voi replikoida slurpd:lla
Asennettiin OpenLDAP slapd (standalone LDAP daemon), sitä tukevat kirjastot ja työkalut DMZ5-koneelle
Jouko Rouhiainen26.2.2008
CT30A6800 Lähiverkot -erikoistyökurssi
Asennus
aptitude install slapd– Asentaa slapd:n ja slapd:n vaatimat paketit
mukaan lukien tärkeä Berkeley DB
aptitude install ldap-utils– Asentaa OpenLDAP-asiakasohjelmiston
komennot
invoke-rc.d slapd stop– Sammutetaan slapd ennen konfigurointia
Jouko Rouhiainen26.2.2008
CT30A6800 Lähiverkot -erikoistyökurssi
Konfiguraatio – perusasetukset 1/3
/etc/ldap/slapd.conf
include /etc/ldap/schema/core.schema
include /etc/ldap/schema/cosine.schema
include /etc/ldap/schema/inetorgperson.schema
include-direktiivi yrittää avata perässä olevan tiedoston
Schemat tarjoavat määritykset objektiluokille ja ominaisuuksille
Jouko Rouhiainen26.2.2008
CT30A6800 Lähiverkot -erikoistyökurssi
Konfiguraatio – perusasetukset 2/3
pidfile /var/run/slapd/slapd.pid
argsfile /var/run/slapd/slapd.args
loglevel 0
Ensimmäiset kaksi määrittävät kyseisten tiedostojen sijainnin
Loglevel määrittää mitä kirjataan system logiin
Jouko Rouhiainen26.2.2008
CT30A6800 Lähiverkot -erikoistyökurssi
Konfiguraatio – perusasetukset 3/3
modulepath /usr/lib/ldap
# modulepath /usr/local/libexec/openldap
moduleload back_hdb
modulepath ja moduleload sisältävät ohjeet moduulien lataamiseen
Moduulit ovat erityisiä kirjastoja, jotka ladataan slapd:n käynnistyessä
Jouko Rouhiainen26.2.2008
CT30A6800 Lähiverkot -erikoistyökurssi
Konfiguraatio – tietokannan asetukset
database hdbKäytetään hierarkista tietokantaasuffix "dc=lahiverkot,dc=net”Määrää hakemiston juuripuunrootdn "cn=root,dc=lahiverkot,dc=net"rootpw {SSHA}W6C5PjkClqRaG5atOhkYmBrcg6Ax3O9rHakemiston hallitsija ja salasana, salasana saadaan hash-muodossa
slappasswd apuohjelmalla: slappasswd -s salasanadirectory /var/lib/ldap# directory /usr/local/var/openldap-dataMinne tietokantatiedostot tulee sijoittaaindex objectClass,cn eqMitkä attribuutit indeksoidaan
Jouko Rouhiainen26.2.2008
CT30A6800 Lähiverkot -erikoistyökurssi
Konfiguraatio - ACL
access to <mihin>
by <kuka> <millainen pääsy>
by <kuka> <millainen pääsy>
access to *
by * read
access to *
by dn="cn=root,dc=lahiverkot,dc=net" write
Ei varsinaisesti rajoiteta mitään tässä esimerkissä
Jouko Rouhiainen26.2.2008
CT30A6800 Lähiverkot -erikoistyökurssi
Käyttö – LDIF-tiedosto
# Juurisolmudn: dc=lahiverkot,dc=netobjectclass: dcObjectobjectclass: organizationo: Lappeenrannan teknillinen yliopistodc: lahiverkot# Ihminendn: ou=ihmiset,dc=lahiverkot,dc=netobjectClass: organizationalUnitou: ihmiset# Henkilotiedotdn: cn=Jouko Rouhiainen,ou=ihmiset,dc=lahiverkot,dc=netobjectClass: personobjectClass: organizationalPersonobjectClass: inetOrgPersoncn: Jouko Rouhiainensn: Rouhiainenuid: rouhiainenmail: [email protected]: Master of the Universe
Jouko Rouhiainen26.2.2008
CT30A6800 Lähiverkot -erikoistyökurssi
Käyttö – lisäys ja haku
ldapadd -x -D "cn=root,dc=lahiverkot,dc=net" -W -f example.ldif
Lisätään .ldif-tiedoston sisältämät solmut
ldapsearch -x -b 'dc=lahiverkot,dc=net' '(objectclass=*)’
Etsitään kaikki objectclass-tyyppiset merkinnät
Jouko Rouhiainen26.2.2008
CT30A6800 Lähiverkot -erikoistyökurssi
Käyttö - muokkaus
dn: cn=Erkki Esimerkki,ou=ihmiset,dc=lahiverkot,dc=netobjectClass: person15objectClass: organizationalPersonobjectClass: inetOrgPersoncn: Erkki Esimerkkisn: Esimerkkiuid: erkkimail: [email protected]: esimerkki______________________________________________dn: cn=Erkki Esimerkki,ou=ihmiset,dc=lahiverkot,dc=netchangetype: modifyreplace: mailmail: [email protected]: titletitle: Jeesus-
Jouko Rouhiainen26.2.2008
CT30A6800 Lähiverkot -erikoistyökurssi
Käyttö – muokkaus ja poisto
ldapmodify -x -D "cn=root,dc=lahiverkot,dc=net" -W -f muokkaus.ldif
Tekee muokkaus.ldif-tiedostossa määrätyt muutokset
ldapdelete "cn=Erkki Esimerkki,ou=ihmiset,dc=lahiverkot,dc=net" -x -D
"cn=root,dc=lahiverkot,dc=net" –W
Poistaa Erkki Esimerkin hakemistosta
Jouko Rouhiainen26.2.2008
CT30A6800 Lähiverkot -erikoistyökurssi
LDAP ja Thunderbird
Edit -> Account Settings: Composition & Addressing
”Use a different LDAP server”, Edit directories..
Jouko Rouhiainen26.2.2008
CT30A6800 Lähiverkot -erikoistyökurssi
Yhteenveto
Monipuolinen ja yksinkertainen protokolla hakemistopalvelukäyttöön
Asentaminen, konfiguraatio ja käyttö melko helppoa