klink0v (klink0v) wrote,
klink0v
klink0v

Багофича в nslcd

По старой доброй традиции я интегрирую Linux-овые файл-сервера на Samba с виндовыми контроллерами домена в плане единства учетных записей путем связки nslcd + libnss-ldapd + libkrb5. Со стороны винды использую SFU. Такой подход имеет свои достоинства и свои недостатки по сравнению с winbind, но сейчас не об этом.

Сегодня наткнулся на багофичу в демоне nslcd. Симптомы выглядели странно: часть AD-аккаунтов он прекрасно "видит", остальные — нет. При этом ldapsearch с тем же самым наобором фильтров отрабатывает великолепно: с контроллера домена возвращается всё что нужно и как нужно. Полез разбираться.

Оказывается, nslcd принципально отказывается воспринимать логины (uid-ы) длиной менее двух символов. Причем, как выяснилось, проблема известная. Остается только гадать, чем руководствовался автор данной софтины, принимая такое странное решение. Чем ему не угодили имена из одной буквы? У нас дык одмины обожают баловаться такими.

Впрочем, решение тоже известно. Нужно добавить в nslcd.conf строчку



validnames /^[a-z0-9._@$][a-z0-9._@$ \\~-]*[a-z0-9._@$~-]?$/i

Но блин, сколько же я промучался прежде чем понял в чём дело. Уж на что, а на ограничение длины логина я бы точно никогда не подумал.

Subscribe
  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 0 comments