Я бы выбрал какое-нибудь решение на основе LDAP из-за гибкости и широкой поддержки, а для мира GNU / Linux лучше всего использовать OpenLdap. Вначале мир ldap несколько тривиален, но достаточно надежен.
Вам потребуется:
сервер OpenLdap, может быть, два (по типу поставщика-потребителя), если вы требуется архитектура высокой доступности с установленной схемой Samba
, сервер Samba настроен для получения пользователей и групп с использованием Openldap как backend и предоставить некоторые общие ресурсы
Инструменты Smbdlap для управления (добавления, редактирования, удаления) пользователей и групп из командной строки
веб-интерфейс для простого управления (добавление, редактирование, удаление) пользователей и групп, я предлагаю fusiondirectory или, в качестве альтернативы, конфигурации и пакеты локального клиента ldap
для включения поддержки ldap в pam и nss для GNU вход в linux.
Примерно есть несколько неплохих руководств по этой настройке.
Это немного хитрое решение из-за пункта 3. LDAP в IPA доступен только не анонимно, так что вам нужно либо керберизовать приложения, делающие запросы, либо дать им общую учетную запись, с которой они будут связаны. Большинство приложений, которые я видел, поддерживают это.
Из Samba wiki: " Обратите внимание, что вы не можете указать Samba4 на ваш существующий OpenLDAP сервер и ожидать, что все заработает"
Честно говоря, в зависимости от специфики требования 3 для такого маленького окружения, я бы предложил вам использовать Active Directory (я предполагаю, что она у вас уже есть) через sssd и в качестве back-end к samba. Это самое простое и наиболее сопровождаемое решение, предполагая, что req 3 поддерживает его.
Если вы не хотите строить все с нуля, вы можете попробовать Univention Corporate Server (UCS). Я работаю на Univention, так что я это хорошо знаю. Это операционная система на основе Debian корпоративного уровня, которая хорошо работает, как и управление доменами/идентификациями для гетерогенных сред. Также есть бесплатная "Core Edition", которая имеет все необходимые вам возможности.
Помимо прочего, она предоставляет:
Как заметил Энди, обычно вы не хотите раскрывать ваш LDAP-директорию без аутентификации (анонимно). Хорошей практикой является создание специального пользователя в LDAP директории и использование этого пользователя в стороннем приложении для аутентификации при запросе LDAP директории.
Есть даже статьи в Univention Wiki для Redmine и Alfresco: Cool Solution - Install Redmine and setup ldap authentication Cool Solution - Alfresco
Дальнейшая информация по UCS на сайте Univention's website.
Надеюсь, я вам помог, Марен