Я сподівався, що деякі гуру PAM / LDAP можуть мені допомогти тут. Нещодавно на Ubuntu Server я створив каталог LDAP для зберігання облікових записів як для своїх клієнтів (для використання з веб-системами), так і для персоналу (якому потрібно буде входити через SSH.)
Аутентифікація LDAP працює бездоганно. Однак я не можу отримати обмеження рахунки працюючих: співробітники рахунку матимуть ідентифікатори між 2001
і 2999
і буде членом ssh-users
групи , щоб дозволити їм входу на сервери.
Проблемні обмеження є /etc/ldap.conf
, і є pam_min_uid
, pam_max_uid
і pam_groupdn
.
pam_groupdn
містить повний DN для моєї ssh-users
групи. pam_min_uid
= 2000
і pam_max_uid
= 2999
.
Тепер мені вдалося змусити їх працювати, додавши:
account [success=1 default=ignore] pam_ldap.so
над pam_unix.so
рядком в /etc/pam.d/common-account
. Однак локальні облікові записи Unix НЕ можуть увійти в систему: SSH-сервер вбиває з'єднання, як тільки вони спробують.
Я встановив pam_ldap.so
модуль sufficient
у наведеному вище файлі, але потім недійсні користувачі отримують повідомлення про те, що вони не можуть увійти, але він все-таки реєструє їх.
Отже, як я можу встановити ці обмеження для облікових записів для користувачів LDAP, одночасно дозволяючи користувачам UNIX входити в систему?
Як ви можете, напевно, здогадуєтесь, що я новачок у PAM, хоча мені вдалося змусити модуль «автоматично зробити домашні каталоги» робочим :-)
Велике спасибі, Енді