суббота, 6 ноября 2010 г.

Мой HOW-TO по установке LDAP на Linux Debian (Ubuntu)


Решил я разобраться, как же всё-таки ставить и настраивать ldap в Debian.


1. Установка
Установка - это самая простая часть, всего 1 команда:
sudo aptitude install slapd ldap-utils
slapd - это пакет, который предоставляет сервер OpenLDAP в Debian.
ldap-utils - программы-клиенты для этого сервера.
По ходу установки нужно будет 2 раза ввести пароль записи admin.
2. Настройка
Я настраивал следующей командой:
sudo dpkg-reconfigure slapd
.
Вам зададут еще несколько вопросов, на которые нужно будет честно ответить:)
3. Заводим пользователей
Пользователи (да и не только пользователи, а вообще всё: юзеры, компьютеры, серверы; но для краткости буду использовать слово пользователи) в LDAP добавляются следующим образом:
Во-первых, все данные о пользователях заносятся в ldif-файлы, такие файлы специального формата, о них ниже.
Во-вторых, сам этот файл импортируется в LDAP.
Итак, создадим следующий ldif-файл (Можете скопировать и сохранить где-либо у себя на компьютере):
dn: ou=people,dc=example,dc=com
objectClass: organizationalUnit
ou: people

dn: ou=groups,dc=example,dc=com
objectClass: organizationalUnit
ou: groups

dn: uid=john,ou=people,dc=example,dc=com
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: shadowAccount
uid: john
sn: Doe
givenName: John
cn: John Doe
displayName: John Doe
uidNumber: 1000
gidNumber: 10000
userPassword: password
gecos: John Doe
loginShell: /bin/bash
homeDirectory: /home/john
shadowExpire: -1
shadowFlag: 0
shadowWarning: 7
shadowMin: 8
shadowMax: 999999
shadowLastChange: 10877
mail: john.doe@example.com
postalCode: 31000
l: Toulouse
o: Example
mobile: +33 (0)6 xx xx xx xx
homePhone: +33 (0)5 xx xx xx xx
title: System Administrator
postalAddress:
initials: JD

dn: cn=example,ou=groups,dc=example,dc=com
objectClass: posixGroup
cn: example
gidNumber: 10000
Здесь мы создаем 2 сущности - people и groups, в которых мы будем добавлять соотвественно людей и группы, и затем создаем пользователя John Doe и группу example.
Теперь заносим этот файл в LDAP-каталог. Для этого делаем следующее:
1) Останавливаем slapd:
sudo /etc/init.d/slapd stop
2) Вносим изменения:
sudo slapadd -l example.ldif
где example.ldif - имя нашего ldif файла.
3) Запускаем slapd:
sudo /etc/init.d/slapd start
Чтобы проверить, что все успешно добавилось, можно выполнить следующую команду:
$ ldapsearch -xLLL -b "dc=example,dc=com" uid=john sn givenName cn
dn: uid=john,ou=people,dc=example,dc=com
cn: John Doe
sn: Doe
givenName: John
В следующей статье расскажу про то, как настраивать LDAP-аутентификацию.

В основном использовались материалы этой статьи.

P.s. И да, о том, как добавить этого юзера в эту группу:
Создаем еще один ldif-файл следующего содержания:
dn: cn=example,ou=groups,dc=example,dc=com
changetype: modify
add: memberUid
memberUid: john
и выполняем команду:
ldapmodify -x -D cn=admin,dc=example,dc=com -f ex2.ldif
,
где ex2.ldif - это наш файл.

Комментариев нет: