ct30a6800 lähiverkot -erikoistyökurssi

26
CT30A6800 Lähiverkot - erikoistyökurssi LDAP Jouko Rouhiainen 2007-2008

Upload: hana

Post on 12-Jan-2016

21 views

Category:

Documents


0 download

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 Presentation

TRANSCRIPT

Page 1: CT30A6800  Lähiverkot -erikoistyökurssi

CT30A6800 Lähiverkot -

erikoistyökurssi

LDAP

Jouko Rouhiainen

2007-2008

Page 2: CT30A6800  Lähiverkot -erikoistyökurssi

Jouko Rouhiainen26.2.2008

CT30A6800 Lähiverkot -erikoistyökurssi

Sisältö

Johdanto

Hakemistot

LDAP

Vaihtoehtoja

OpenLDAP

Lopetus

Page 3: CT30A6800  Lähiverkot -erikoistyökurssi

Jouko Rouhiainen26.2.2008

CT30A6800 Lähiverkot -erikoistyökurssi

Johdanto

Lightweight Directory Access Protocol

Protokolla hakemistopalvelujen kyseilyihin ja muokkaukseen

Page 4: CT30A6800  Lähiverkot -erikoistyökurssi

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

Page 5: CT30A6800  Lähiverkot -erikoistyökurssi

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

Page 6: CT30A6800  Lähiverkot -erikoistyökurssi

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

Page 7: CT30A6800  Lähiverkot -erikoistyökurssi

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

Page 8: CT30A6800  Lähiverkot -erikoistyökurssi

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

Page 9: CT30A6800  Lähiverkot -erikoistyökurssi

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

Page 10: CT30A6800  Lähiverkot -erikoistyökurssi

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

Page 11: CT30A6800  Lähiverkot -erikoistyökurssi

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ä

Page 12: CT30A6800  Lähiverkot -erikoistyökurssi

Jouko Rouhiainen26.2.2008

CT30A6800 Lähiverkot -erikoistyökurssi

Miten LDAP toimii?

Asiakas Palvelin

Hakuoperaatio

Ensimmäinen merkintä

Toinen merkintä

N. merkintä

Tuloskoodi

...

Page 13: CT30A6800  Lähiverkot -erikoistyökurssi

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

Page 14: CT30A6800  Lähiverkot -erikoistyökurssi

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

Page 15: CT30A6800  Lähiverkot -erikoistyökurssi

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

Page 16: CT30A6800  Lähiverkot -erikoistyökurssi

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

Page 17: CT30A6800  Lähiverkot -erikoistyökurssi

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

Page 18: CT30A6800  Lähiverkot -erikoistyökurssi

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ä

Page 19: CT30A6800  Lähiverkot -erikoistyökurssi

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

Page 20: CT30A6800  Lähiverkot -erikoistyökurssi

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ä

Page 21: CT30A6800  Lähiverkot -erikoistyökurssi

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

Page 22: CT30A6800  Lähiverkot -erikoistyökurssi

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

Page 23: CT30A6800  Lähiverkot -erikoistyökurssi

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-

Page 24: CT30A6800  Lähiverkot -erikoistyökurssi

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

Page 25: CT30A6800  Lähiverkot -erikoistyökurssi

Jouko Rouhiainen26.2.2008

CT30A6800 Lähiverkot -erikoistyökurssi

LDAP ja Thunderbird

Edit -> Account Settings: Composition & Addressing

”Use a different LDAP server”, Edit directories..

Page 26: CT30A6800  Lähiverkot -erikoistyökurssi

Jouko Rouhiainen26.2.2008

CT30A6800 Lähiverkot -erikoistyökurssi

Yhteenveto

Monipuolinen ja yksinkertainen protokolla hakemistopalvelukäyttöön

Asentaminen, konfiguraatio ja käyttö melko helppoa