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 структура - инструменти за администрация на база

