Авторизация Debian Squeeze-клиентов на Calculate Directory Server

В процессе перестройки сети стала задача авторизации Debian-машины на сервере CDS.
Прочитав статью Alexey Samoukin я взялся за дело, но не тут-то было, описанных файлов на моем Debian Squeeze не обнаружилось, но зато нашлись другие. Методом научного тыка, а также прочтением статьи на Debian Wiki про LDAP/PAM и про LDAP/NSS проблема была успешно решена.

Итак, необходимые настройки:

  1. Устанавливаем пакет libpam-ldap

На вопросы debconf отвечаем следующим образом:

LDAP server URI:

URL или имя вашего сервера CDS

Distinguished name of the search base:

ou=Services,dc=calculate

LDAP version to use:

3

Allow LDAP admin account to behave like local root?
я ответил

Нет

Хотя, возможно тут можно поиграться. Мне просто это пока не нужно
Does the LDAP database require login?

Да

LDAP login user account:

cn=proxyuser,dc=calculate

Password for LDAP login user:

calculate

Local encryption algorithm to use for passwords:

md5

PAM profiles to enable:
убедиться, что включено

LDAP Authentication

Остальные - как вам нужно.

  1. Устанавливаем пакет libnss-ldap

На вопросы debconf отвечаем следующим образом:

LDAP server Uniform Resource Identifier:

URL или имя вашего сервера CDS

Distinguished name of the search base:

ou=Services,dc=calculate

LDAP version to use:

3

Does the LDAP database require login?:

Да

Special LDAP privileges for root?:

Нет

Make the configuration file readable/writeable by its owner only?:

Да

Unprivileged database user:

cn=proxyuser,dc=calculate

Password for database login account:

calculate
  1. Настраиваем /etc/nsswitch.conf

Тут необходимо убедиться, что у записей passwd, shadow, group, netgroup есть запись ldap. У меня этот файл выглядит так (измененные строки выделены звездочками, в файле звездочек, естественно, нет):

*passwd:         ldap compat
*group:          ldap compat
*shadow:         ldap compat

hosts:          files dns
networks:       files dns

protocols:      db files
services:       db files
ethers:         db files
rpc:            db files

*netgroup:       nis ldap
  1. Создание домашних каталогов

Если нужно, чтобы при входе пользователя создавался домашний каталог - в файле /etc/pam.d/common-session после строки

 session required        pam_unix.so

добавьте

session  required        pam_mkhomedir.so skel=/etc/skel umask=0022

Вышеописанная настройка - это самый простой вариант, при необходимости можно использовать множество других возможностей. Подробнее читайте на Debian Wiki по ссылкам в начале статьи.

Спасибо Михаил!

Название предыдущей статьи поправил.