LDAP

от ILuxWiki

Направо към: навигация, търсене

Съдържание

Въведение

LDAP е възможност с която базираме оторизация към различни сървъри (напр. sshd, apache, samba), като предимството е, че базата данни с клиентите, паролите и настройките на акаунтите им да не се поддържат локално на съответната машина. Ползва се LDAP server, на който клиентите се закачат. Информацията, необходима за оторизация към съответната услуга се обменя между LDAP сървъра и машината, на която е инсталирана услугата, в реално време. LDAP осигурява удобство, когато е необходимо да се направят еднакви акаунти на потребители към едни и същи услуги в различни компютри. Недостатък е факта, че при отпадане на връзката до LDAP сървъра се губи възможността да се закачи нов клиент към машина, която разчита на LDAP за оторизация.

OpenLDAP Server

FreeBSD

pkg_add -r openldap24-server

В /etc/rc.conf добавяме:

 slapd_enable="YES"
 slapd_flags='-h "ldapi://%2fvar%2frun%2fopenldap%2fldapi/ ldap://0.0.0.0/"'
 slapd_sockets="/var/run/openldap/ldapi"

Конфигурационният файл на демона е: /usr/local/etc/openldap/slapd.conf

Linux

 apt-get install slapd

Конфигурационният файл на демона е:

 /etc/ldap/slapd.conf

В него трябва да се опишат статично кои потребители на LDAP базата имат достъп до съответните директории в нея. Например, ако дадена директория представлява конкретен сървър (машина), правим така, че определено потребителско име да има достъп само до тази машина, а не да изтегли информацията за друга машина.

След като демона бъде пуснат, предстои да бъдат настроени клиентите по машините.

Linux Client

Редактира се /etc/nsswitch.conf – файла, в който се задава как и откъде да бъде търсена оторизационната информация. До 'passwd' 'group' и 'shadow' се добавя 'ldap', например: passwd: compat ldap group: compat ldap shadow: compat ldap

В /etc/libnss-ldap.conf се въвеждат нещата по следния пример: uri ldap://hostname.of.ldap.server base dc=interbild,dc=net binddn cn=user,dc=interbild,dc=net bindpw parola

като на първото се въвежда адреса на LDAP сървъра, а base dc е директорията в LDAP базата, от която ще бъде извличана информацията за съответната машина. Ако в slapd.conf е забранена опцията за четене без парола от базата, тогава трябва да се въведе и името и паролата на потребител, който е описан в slapd.conf като имащ достатъчно права за достъп.

По подобен начин се настройва и /etc/pam_ldap.conf

Ако всичко работи както трябва, би трябвало да можем да видим информация за LDAP user акаунтите в машината. Може да се тества с id user което би трябвало да покаже съответния UID и GID на потребителя. За да не се застъпи с UID и GID на локални user-и се препоръчва триене на локалните user-и при мигриране към LDAP.

Оторизиране За оторизиране към машината от LDAP user акаунтите трябва да се направят промени във файлове от /etc/pam.d.

/etc/pam.d/common-account:
account  sufficient pam_ldap.so
/etc/pam.d/common-auth
auth     sufficient pam_ldap.so
/etc/pam.d/common-session
session  sufficient pam_ldap.so
/etc/pam.d/common-password
password sufficient pam_ldap.so     type=network use_authtok first_pass

SSH За да може SSH демона да работи с LDAP user акаунти е необходимо да се настрои UsePAM yes в sshd_config. В противен случай трябва да са описани ключове за достъп.

FreeBSD Client

Тук все още липсва:

- самба + ldap - как се създава homedir автоматично - ldap + passwd - slapd структура - инструменти за администрация на база


Полезни страници

Лични инструменти