OpenLDAP:n käyttöönotto

Linux.fista
Siirry navigaatioon Siirry hakuun
Tulostettavaa versiota ei enää tueta ja siinä voi olla renderöintivirheitä. Päivitä selaimesi kirjanmerkit ja käytä selaimen tavallista tulostustoimintoa sen sijaan.
Artikkeli soveltuu vain tietylle jakelulle vaikka sen tulisi käsitellä aihetta neutraalisti. Sitä tulisi muuttaa siirtämällä jakeluriippuvaiset yksityiskohdat Jakelukohtaista kappaleen alle - tai koko sivu kyseisen jakelun alasivuksi.

OpenLDAP:n käyttöönotto vaatii muutamien ohjelmapakettien asennuksen. Fedorassa paketit saa asennettua komennolla

yum install openldap openldap-devel nss_ldap openldap-clients openldap-servers

Muista paketinhallintajärjestelmistä löytynee jokseenkin samannimiset paketit.

Käyttöönotto palvelinkoneessa

  • Luo ldap-rootin salasana seuraavalla komennolla ja ota se talteen.
slappasswd
  • Muokkaa /etc/openldap/slapd.conf tiedostoa seuraavasti:
database 	bdb
suffix		"dc=kapanen,dc=jee"
rootdn	        "cn=ldapservu,dc=kapanen,dc=jee"
rootpw	{SSHA}aiemminmuistiinottamasikryptattusalasana
service ldap start

tai

/etc/init.d/ldap start
  • Voit myös määrittää ldap:n käynnistymään koneen käynnistyessä automaattisesti, Fedorassa:
chkconfig ldap on
  • Tuo root ldapiin:
grep root /etc/passwd > /etc/openldap/passwd.root

Tuo käyttäjät (esim. oppilas) ldapiin seuraavalla tavalla:

grep oppilas /etc/passwd > /etc/openldap/passwd.ldapusers
  • Luo ja tuo ldapmalli ldapiin (huomaa >>, jotta et kirjoita edellisen päälle):
useradd ldapmalli
passwd ldapmalli
grep ldapmalli /etc/passwd >> /etc/openldap/passwd.ldapusers
  • Muunna tiedostot ldif muotoon:
cd /usr/share/openldap/migration
./migrate_passwd.pl /etc/openldap/passwd.root /etc/openldap/root.ldif
./migrate_passwd.pl /etc/openldap/passwd.ldapusers /etc/openldap/ldapusers.ldif
  • Muuta luomissasi *.ldif tiedostoissa dc-kohdat vastaamaan aiempaa verkkomäärittelyäsi (dc=padl tilalle dc=kapanen ja dc=com tilalle dc=jee). Lisäksi muuta root.ldif tiedostossa cn=root tilalle slapd.conf-tiedostossa määrittämäsi nimi (cn=ldapservu).
  • Luo domainin määritykset sisältävä tiedosto /etc/openldap/kapanen.jee.ldif (huomaa tyhjä rivi erottamassa dn-osat)
dn: dc=kapanen,dc=jee
dc: kapanen
description: Root LDAP entry for kapanen.jee
objectClass: dcObject
objectClass: organizationalUnit
ou: rootobject
dn: ou=People,dc=kapanen,dc=jee
ou: People
description: All people in organisation
objectClass: organizationalUnit
  • Tuo tarvittavat domainin määritykset luovat tiedostot ldapiin (anna ldapin rootin salasana kysyttäessä):
ldapadd -x -D "cn=ldapservu,dc=kapanen,dc=jee" -W -f /etc/openldap/kapanen.jee.ldif
ldapadd -x -D "cn=ldapservu,dc=kapanen,dc=jee" -W -f /etc/openldap/root.ldif
ldapadd -x -D "cn=ldapservu,dc=kapanen,dc=jee" -W -f /etc/openldap/ldapusers.ldif

Huom! Mikäli ensimmäisellä kerralla domain-määritykset sisältävässä tiedostossa on virheitä ja ne korjattuasi saat komennon uudelleen antaessasi virheen: ldap_add: Already exist (68), niin anna komennossa lisäoptio -c jolla saat komennon läpi:

ldapadd -x -D "cn=ldapservu,dc=kapanen,dc=jee" -W -c -f /etc/openldap/kapanen.jee.ldif

HUOM! Avaa LDAPia varten palomuuriin portti 389 tcp ja udp.

Käyttöönotto asiakaskoneessa

  • Fedorassa anna komento system-config-authentication (asenna se tarvittaessa yum install authconfig-gtk), rastita kohta Enable LDAP support (jätä md5 ja shadow kohtaan rastit), valitse Configure LDAP ja laita palvelimen IP ja Base DN. Tee sama Authentication välilehdessä.
  • Reboot ja kirjaudu tunnuksella joka palvelinosiossa määritettiin (esim oppilas jota ei löydy asiakaskoneesta, mutta ldapista kylläkin -> toimii).
  • Voit myös kirjautua ssh:lla joltakin toiselta koneelta asiakaskoneeseen (jossa siis ldap-kirjautuminen valittu) vain ldap-serveriin määritetyllä tunnuksella. Saat virheilmoituksen puuttuvasta kotihakemistosta:
Could not chdir to home directory /home/oppilas: No such file or directory
-bash-3.00$

Voit mountata kotihakemistot palvelimelta osoitteessa: http://fedoranews.org/mediawiki/index.php/How_to_setup_and_maintain_OpenLDAP_server_for_your_network#Bonus:_Exporting_LDAP_users_home_folders_with_NFS
olevan ohjeen mukaisesti.