Столкнулся с непонятным мне поведением системы при авторизации пользователей через OpenLDAP. Сама авторизация работает, с ее настройкой проблем не возникло. Однако в процессе тестирования заметил, что в случае остановки процесса nscd (Name Switch Cache Daemon) обычные пользователи перестают получать информацию из LDAP-каталога. Проявляется это, например, в невозможности получения имени пользователей/групп по их идентификаторам. К примеру, вот так выглядит ls корня для домашних каталогов от обычного пользователя при опущенном nscd:pacman@node1:~$ ls -la /home
итого 16
drwxr-xr-x 4 root root 4096 Июн 10 08:00 .
drwxr-xr-x 20 root root 4096 Июн 10 07:10 ..
drwxr-xr-x 2 10001 10001 4096 Июн 10 08:01 Obivan
drwxr-xr-x 3 10000 10000 4096 Июн 10 07:11 VitalyПричем на LDAP-сервер в этот момент запросы от NSS хоста вообще не прилетают. Если запустить nscd, то все кардинально меняется:
pacman@node1:~$ su
Пароль:
node1:/home/Vitaly# /etc/init.d/nscd start
Starting Name Service Cache Daemon: nscd.
node1:/home/Vitaly# exit
exit
pacman@node1:~$ ls -la /home
итого 16
drwxr-xr-x 4 root root 4096 Июн 10 08:00 .
drwxr-xr-x 20 root root 4096 Июн 10 07:10 ..
drwxr-xr-x 2 obivan obivan 4096 Июн 10 08:01 Obivan
drwxr-xr-x 3 pacman pacman 4096 Июн 10 07:11 VitalyПри работе под root такого эффекта не наблюдается. Почему? Ведь nscd только кеширует запросы. Или не только?
>[оверквотинг удален]
>итого 16
>drwxr-xr-x 4 root root 4096 Июн 10
>08:00 .
>drwxr-xr-x 20 root root 4096 Июн 10 07:10
>..
>drwxr-xr-x 2 obivan obivan 4096 Июн 10 08:01 Obivan
>drwxr-xr-x 3 pacman pacman 4096 Июн 10 07:11 Vitaly
>
>При работе под root такого эффекта не наблюдается. Почему? Ведь nscd только
>кеширует запросы. Или не только?мне почему-то кажется, что проблема в том, что для подсоединения к ldap серверу использутеся ssl/tls, а права доступа на какой-либо файл с сертификатом или ключем
неправильно выставлены. т.к. nscd обычно работает от root, то и наблюдается такой эффект.
вообще-то данная проблема с pald nss_ldap никак не решается, кроме как изменение прав
доступа к файлам, часто nscd не помогает.
>мне почему-то кажется, что проблема в том, что для подсоединения к ldap
>серверу использутеся ssl/tls, а права доступа на какой-либо файл с
>сертификатом или ключемДействительно, проблему решило chmod 0644 /etc/libnss-ldap.conf (стояло 0600).
>вообще-то данная проблема с pald nss_ldap никак не решается, кроме как изменение
>прав
>доступа к файлам, часто nscd не помогает.Посоветовали посмотреть в сторону nss_ldapd, вроде как он решает такие проблемы. Но пока не смотрел, попробую на неделе.
>[оверквотинг удален]
>
>Действительно, проблему решило chmod 0644 /etc/libnss-ldap.conf (стояло 0600).
>
>>вообще-то данная проблема с pald nss_ldap никак не решается, кроме как изменение
>>прав
>>доступа к файлам, часто nscd не помогает.
>
>Посоветовали посмотреть в сторону nss_ldapd, вроде как он решает такие проблемы. Но
>пока не смотрел, попробую на неделе.
>nss-pam-ldapd проблему с file permissions действительно решает, более того, на мой взгляд он работает более приемлемо, чем связка padl ldap_nss + nscd. единственный, на мой взгляд, недостаток - это отдельный файл конфигурации и несовместимость с синтаксисом /etc/ldap.conf, что впрочем легко исправляется путем минимального редактирования исходников.