OpenLDAP:n käyttöönotto
OpenLDAP:in 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 salansana 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
- Käynnistä ldap:
service ldap start
tai
/etc/init.d/ldap start
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 descripton: 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 doain 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.