LDAP Novell a přihlášení přes NDS

From DCEwiki
Jump to: navigation, search
Poznámka Aby se uživatel z naší katedry mohl přihlásit na strojích, které používají Novellovský LDAP a NDS, musí mít zaveden platný účet v Novellu.

Při použití účtů z Novellu na linuxových strojích zjišťuje PAM z jeho LDAPu jaké má mít ověřený uživatel UID a GID. K tomu je ovšem třeba do systému doinstalovat balík libnss-ldap, který si sebou přitáhne také balík s démonem nscd a balíček libpam-ldap, který nám - pokud to vyžadujeme - provádět vůči Novellovské NDS také autorizaci uživatele.

root@stroj~: apt-get install libnss-ldap

Nastavení LDAPu[edit]

Pokud nás z LDAPu zajímá pouze UID a GID příslušného uživatele, není vůbec třeba zasahovat do souboru /etc/pam_ldap.conf. Pro nastavení přístupu k LDAPu totiž stačí upravit nastavení v souborech /etc/libnss-ldap.conf a /etc/nssswitch.conf

Při počáteční konfiguraci přes postinstalační dialog balíčku libnss-ldap jsme postupně dotazováni: URI LDAP serveru. Sem je třeba v případě katedry DCE uvést...

  1. LDAP server URI: --> ldaps://novell.felk.cvut.cz:636/
  2. LDAP server search base: --> ou=felk,o=cvut,c=cz
  3. LDAP version: --> 3
  4. LDAP database require login?: --> no
  5. LDAP special privileges root --> yes
  6. Make config readable/writable by owner only? --> yes
  7. LDAP account for root: --> cn=ldapuser,ou=felk,o=cvut,c=cz
  8. LDAP root password : --> heslo...
Poznámka Rekonfiguraci a zopakování celého postupu postinstalačního skriptu lze kdykoliv spustit příkazem
root@stroj~: dpkg-reconfigure libnss-ldap

I když se postinstalační skript zeptá na základní nastavení, nebude to pro funkční komunikaci s Novellem na katedře DCE stačit! Ta je totiž šifrovaná přes SSL, tudíž se stejně nevyhneme manuálnímu zásahu do konfigurace. Je třeba nastavit dva atributy:

ssl 
na hodnotu on - aby komunikace probíhala přes SSL
tls_checkpeer 
na nodnotu no, aby si klient certifikát stáhnul z novellovského serveru nevyžadoval certifikát lokální
root@stroj~: grep -v ^# /etc/libnss-ldap.conf | grep -v ^$
base ou=felk,o=cvut,c=cz
uri ldaps://novell.felk.cvut.cz:636/
ldap_version 3
rootbinddn cn=ldapuser,ou=felk,o=cvut,c=cz
ssl on
tls_checkpeer no

Heslo je uloženo v souboru /etc/libnss-ldap.secret

root@stroj~: cat /etc/libnss-ldap.secret
 ...

Aby systém LDAP používal, musí být (manuálně) upraven soubor /etc/nsswitch.conf

 passwd:      compat ldap
 group:       compat
 shadow:      compat
 ...

Po jeho doplnění (a každé změně v konfiguraci) je třeba provést restart nscd démona

Ověření LDAPu[edit]

Ověření, zda-li LDAP funguje lze provést příkazem id

root@stroj~: id usernameX
uid=45457(usenameX) gid=100(users) groups=100(users)

Čeká-li příkaz id delší dobu na odezvu a pak skončí oznámením, že uživatel neexistuje, přesto že si jsme jisti tím že existuje, pak může být příčinou problému chybně nastavené heslo do NDS v souboru /etc/libnss-ldap.secret

Pokud se takové oznámení objeví ihned, pak může být příčina v chybně nastaveném parametru tls_checkpeer v souboru /etc/libnss-ldap.secret. Ten totiž, pokud není nastaven vůbec, má výchozí hodnotu yes. A tudíž musí být přenastaven na hodnotu no, tak aby server nevyžadoval lokální certifikát.

Autorizace přes NDS[edit]

Pokud chceme kromě LDAPu využívat také autorizaci přes novellovskou NDS, pak je třeba nakonfigurovat i soubor /etc/pam-ldap.conf. V tomto případě je zbytečné se zdržovat výchozí rekonfigurací, protože je rychlejší rovnou zkontrolovat, jestli tento soubor obsahuje následující nezakomentovaní řádky..

root@stroj~: grep -v ^# /etc/pam_ldap.conf | grep -v ^$
base ou=felk,o=cvut,c=cz
uri ldaps://novell.felk.cvut.cz:636/
ldap_version 3
pam_password nds
ssl on
tls_checkpeer no