Pozor toto nie je hotový článok. Článok dokončíme neskôr.
LDAP je - TO DO
Najskôr musíme nainštalovať program, ktorý bude poštu preberať. Otvorte preto v rozhraní Webmin vetvu Others a ťuknite na odkaz Príkazový riadok, do poľa zadajte príkaz
sudo apt-get update
aby sa zaktualizovali informácie o dostupných balíkoch a potom zadajte
sudo apt-get install -f -y --force-yes slapd libnet-ldap-perl
sudo apt-get install -f -y --force-yes phpldapadmin
Ako login zadajte nasledovné
cn=admin,dc=domenaskoly,dc=edu,dc=sk
miesto domenaskoly samozrejme zadate vasu doménu vrámci siete EDUnet.
Ako heslo zadate vase heslo, ktore ste nastavili pri instalacii LDAP a stlacíte tlacidlo Authenticate.
TO DO
sudo apt-get install libpam-ldap libnss-ldap nss-updatedb
Balík libpam-ldap umožňuje autentifikáciu cez LDAP, libnss-ldap umožňuje získať z LDAP informácie o sedení a nss-updatedb umožňuje dočasné lokálne ukladanie databázy aby sa nezahlcovala sieť.
Počas inštalácie dostanete niekoľko otázok:
Shold debconf manage LDAP configuration? Odpovedzete Nie
URI adresa LDAP servera: Zadajte server1.domenaskoly.edu.sk kde domenaskoly je meno vasej domeny v rámci #EDUnet
Distinguishe name of the search base: Zadajte dc=domenaskoly, dc=edu, dc=sk
Verzia LDAP: ponechajte 3
Make local root databaze admin? (Urobiť lokálneho správcu správcom databázy?) Odpovedzte Nie
Does LDAP database require login? (Potrebuje databáza login?) Odpvedzte Nie
Konfigurácia spočíva v troch krokoch
Ubuntu 7.10 má nástroj, ktorým sa dajú prvé dva kroky urobiť zadaním takéhoto príkazu:
sudo auth-client-config -a -p lac_ldap
Tu sa o nástroji dozviete viac https://wiki.ubuntu.com/AuthClientConfig
Pre staršie verzie Ubuntu a Debianu platí toto:
Pozor tento súbor needitujte ako sudo
V súbore /etc/nsswitch.conf nahraďte compat s files ldap tak aby oba riadky vyzerali takto:
passwd: files ldap group: files ldap
To znamená:
Najskôr pozri lokálne uložené loginy (/etc/passwd a /etc/group),
ak nenájdeš zodpovedajúci login, použi LDAP.
Pozor BUG: Presvedčte sa či je v súbore /etc/libnss-ldap.conf alebo v novšej verzii ldapu v súbore /etc.ldap.conf nastavený parameter: bind_policy soft. Ak tam nie je spôsobí to zamrznutie pri štarte systému, tak ho tam dopíšte.
PAM používa na kontrolu LDAP štyri centrálne súbory: common-account, common-auth, common-password a common-session. Všetky sa nachádzajú v priečinku /etc/pam.d.
Upravte súbor /etc/pam.d/common-account aby vyzeral takto:
account sufficient pam_ldap.so account required pam_unix.so
Upravte súbor /etc/pam.d/common-auth aby vyzeral takto:
auth sufficient pam_ldap.so auth required pam_unix.so nullok_secure use_first_pass
Upravte /etc/pam.d/common-password aby vyzeral takto:
password sufficient pam_ldap.so password required pam_unix.so nullok obscure min=4 max=8 md5
Tento krok je voliteľný a odporúčame ho robiť iba pri pomalej sieti alebo pri veľkom počte počítačov.
Aby sme predišli spomaleniu siete a urýchlili prihlásenie, môžeme použiť balíček nss-updatedb na vytvorenie lokálnej databázy používateľských mien. Najskôr teda vytvoríme lokálnu databázu a potom nastavíme intervali v akýc sa bude aktualizovať.
Takže zadajte
sudo nss_updatedb ldap
Týmto sa vytvorí databáza v priečinku /var/lib/misc/.
Teraz vytvoríme script, ktorý bude databázu automaticky aktualizovat.
Vytvoríme script nssupdate.sh v priečinku /etc/cron.hourly/ a natavíme ho spustiteľným. Mal by obsahovať toto:
#!/bin/bash LOCK=/var/run/auth-update.cron [ "$1" != "0" ] && [ -f $LOCK ] && [ -d /proc/"$(cat $LOCK)" ] && exit 0 echo $$ > $LOCK RANGE=3600 [ "$1" != "" ] && RANGE=$1 SLEEP=$RANDOM [ "$RANGE" != "0" ] && let "SLEEP %= $RANGE" || SLEEP=0 sleep $SLEEP go=true while $go; do /usr/sbin/nss_updatedb ldap [ $? -eq 0 ] && go=false [ "$go" == "true" ] && sleep 10 done rm $LOCK exit 0
Aby sa dočasne uložené dáta začali používať upravme súbor edit /etc/nsswitch.conf, aby vyzeral takto:
passwd: files ldap [NOTFOUND=return] db group: files ldap [NOTFOUND=return] db
To znamená:
Najskôr pozri lokálne uložené loginy (/etc/passwd a /etc/group),
ak nenájdeš zodpovedajúci login, použi LDAP,
ak nie je zodpovedajúci login v LDAP, skonči a neurob nič ([NOTFOUND=return]),
ak nie je LDAP dostupný, použi dočasnú databázu.
TO DO