Скажу сразу. Никсы знаю плохо.
Все свои действия буду производить на базе SLinux 5.0 (В будущем, когда выйдет, ALS 5.0)
Установленные пакеты:
$ rpm -qa | grep ldap
alterator-openldap-functions-0.1-alt1
mozldap-6.0.6-alt1
pam_ldap-184-alt2
ruby-ldap-0.9.9-alt1.1
php5-ldap-5.2.11.20090722-alt1.1
phpldapadmin-1.1.0.6-alt1
openldap2.4-clients-2.4.16-alt4.4
libkrb5-ldap-1.6.3-alt8
libldap2.4-2.4.16-alt4.4
openldap2.4-servers-2.4.16-alt4.4
openldap2.4-2.4.16-alt4.4
alterator-openldap-0.3-alt6
nss_ldap-264-alt1
ldap-user-tools-0.5-alt1.2
Вопросы по пакетам.
alterator-openldap-functions-0.1-alt1
alterator-openldap-0.3-alt6
Длячего эти пакеты? Если для настройки через центр управления, то там нет ни одного пункта про LDAP.
phpldapadmin-1.1.0.6-alt1
Как понимаю настройка через веб интерфейс. При попытке зайти получаю:
Error
Fatal error: Cannot read your configuration file "/var/www/html/phpldapadmin/config/config.php", its permissions may be too strict.
Настройку начинаю в соответствии с этой статьей:
http://www.altlinux.org/OpenLDAPНастройка в openldap-server
Для начала нам надо настроить наш ldap-сервер, для этого:
1. найдите файл /etc/openldap/slapd.conf и найдите в нём описание database
2. поменяйте значение suffix на нечто более похожее на Ваше доменное имя, к примеру
suffix "dc=<youhostname>,dc=<youdomainname>"
В новый версиях OpenLDAP все настройки баз вынесены в отдельные конфигурационные файлы:
# [ DATABASE OPTIONS ]
#
# First database definition
include /etc/openldap/slapd-hdb-db01.conf
# Second database definition
include /etc/openldap/slapd-hdb-db02.conf
Поэтому slapd.conf пока оставляю без изменений.
Открываю slapd-hdb-db01.conf и начинаю настройку.
Имя моей машины:
$ hostname
linuxdc.rdtc.net
Планируемый домен rdtc.net.
suffix "dc=rdtc,dc=net"
rootdn "cn=admin,dc=rdtc,dc=net"
rootpw pass
Тут не совсем понял, можно ли пароль задавать в явном виде?, как сейчас? Так как в других мануалах он задавался отдельной командой slappasswd.
directory /var/lib/ldap/bases/rdtc.net
Другие настройки не менял. Сохраняем конфиг. Рестартуем службу.
# service slapd restart
Adjusting environment for slapd: [ DONE ]
Checking slapd configuration [ DONE ]
Stopping slapd service: [ DONE ]
Starting slapd service: [ DONE ]
По умолчанию в branch4.0 LDAP слушает только на loopback-интерфейсе без SSL. Нужно выбрать подходящую строку и её раскомментировать в файле /etc/sysconfig/ldap
Смотрим содержимое:
########################################
# SLAPD Proccess options
########################################
# SLAPD URL list
SLAPDURLLIST="ldap://localhost/"
#SLAPDURLLIST="'ldap://localhost/ ldaps:///'"
#SLAPDURLLIST="'ldap:/// ldaps:///'"
SLAPD_OPTIONS="-l DAEMON -s 6"
########################################
# SLURPD Proccess options
########################################
SLURPD_OPTIONS='-t /'
Пока оставляю без изменений.
В branch4.0 после установки пакетов все логи ldap выводятся только на tty12. Если вы хотите иметь отдельный логфайл, то добавьте в /etc/syslog.conf следующее:
[root@huygens ~]# cat /etc/syslog.conf | grep ldap
local4.* -/var/log/ldap/slapd.log
Добавил, сохранил, перезапустил службу.
Теперь необходимо инициализировать наше дерево. Мой файл new.ldif:
dn: dc=rdtc,dc=net
objectClass: organization
objectClass: dcObject
dc: rdtc
o: net
dn: ou=accounts,dc=rdtc,dc=net
objectClass: organizationalUnit
ou: accounts
Тут тоже не все понятно. Нормальное описание синтаксиса файла не нашел, а английским не настолько хорошо владею, что бы сразу все понять.
Импортируем созданный файл:
# ldapadd -x -f new.ldif -h localhost -D <ваш rootdn> -w <ваш rootpw>
С сервером вроде все.
Настройка Клиентов
В соответсвии со старой инструкцией необходимо настроить /etc/ldap.conf но в текущей версии такого файла нет, а его заменяют /etc/nss_ldap.conf и /etc/pam_ldap.conf
Эти файлы практически не отличаются по содержимому. В обоих произвел такие настройки:
base dc=rdtc,dc=net
rootbinddn cn=admin,dc=rdtc,dc=net
pam_filter objectclass=account
pam_login_attribute uid
pam_member_attribute uniquemember
pam_password crypt
nss_base_passwd ou=account,dc=rdtc,dc=net
nss_base_shadow ou=account,dc=rdtc,dc=net
nss_base_group ou=group,dc=rdtc,dc=net
Больше ничего не менял.
Настройка PAM для работы с pam_ldap
Предполагаю что нужно настраивать /etc/pam.d/system-auth-ldap
Посмотрел его, менять ничего не стал, ибо непонятно, что к чему.
На этом вот и остановился.