Что могло бы работать, хотя мог бы быть по сложному, должен будет использовать цель iSCSI и использовать ntfs в качестве файловой системы, удостоверяясь, что у Вас есть NTFS записываемые драйверы/освобождать в системах Linux и инициаторы iSCSI во всех системах.
Единственные вещи, которые я вижу идущий не так, как надо,
1) единственная карта/цель (я еще не протестировал несколько),
2) не наличие корректных способностей к записи через отклонить платформы.
3) макс. количество соединений за один раз с Целями
4) проблемы безопасности
Как я сказал, это могло бы быть по сложному, но я вполне уверен, у Вас не будет проблемы размера файла, iSCSI довольно быстр, и с точки зрения машины общий носитель был бы похож на локальный диск. Безопасность была бы обработана при наличии основанных на пользователе/ключе соединений с целью (целями) и наличия отдельных целей/LUN для каждой доли.
Просто мысль, я не вижу к большому количеству iSCSI, используемого в дикой природе, но от небольшого тестирования я сделал его работы чертовски хорошо.
Принятие групп доступно системе Linux, я рекомендую редактировать /etc/security/access.conf
для Ubuntu, дистрибутивы Redhat (и их ветвления) и вероятно набор других. Это не требует редактирования файлы PAM и является приятно стандартным местом, чтобы сделать это. Обычно существуют примеры в файле, прокомментированном.
Я в настоящее время использую AllowGroups
директива в /etc/ssh/sshd_config
ограничить, кто может войти в систему. Укажите одну или несколько AD групп на той строке, и те люди будут единственными, которые в состоянии входить в систему.
Следует иметь в виду, что это только работает, если Ваши пользователи только получают доступ к серверу удаленно через ssh. Если они будут петь в локально, то необходимо будет найти другое решение.
Да, существует несколько способов сделать это в зависимости от того, что Вы пытаетесь выполнить точно.
Первый метод может быть сделан через конфигурацию самбы. Это только позволит этим пользователям соединяться с Samba, другие пользователи могут все еще войти в систему через другие сервисы (ssh, локальный термин, и т.д.). С этим Вы захотите добавить строку к своему [глобальному] разделу в smb.conf:
valid users = @groupA @groupB
Другой метод путем изменения правил PAM. Различные дистрибутивы имеют незначительные различия здесь, но вообще говоря, существуют правила PAM на сервис, а также общие правила, можно решить то, что является лучшим. Вы захотите добавить ограничение учетной записи с помощью pam_require модуля. Пример на моем ноутбуке (Fedora 13) состоял бы в том, чтобы изменить раздел учетной записи в/etc/pam.d/system-auth к:
account required pam_unix.so
account required pam_require.so @groupA @groupB
account sufficient pam_localuser.so
account sufficient pam_succeed_if.so uid < 500 quiet
account required pam_permit.so
Для упрощения администрирования Вы могли бы хотеть создать новую группу в AD в целях отслеживания пользователей, которые могут войти в этот сервер.
(Здесь я говорю о самбе 3, сейчас нет опыта работы с самбой 4.)
Нет необходимости редактировать эти файлы /etc/pam.d/xxx. pam_winbind.conf - это тот файл, который вам нужен, обычно он находится в /etc/security/pam_winbind.conf .
Это файл конфигурации модуля pam_winbind, и он работает как для CentOS / Redhat, так и для Debian / Ubuntu. Для справки вы можете прочитать страницу руководства pam_winbind.conf .
Вот пример файла.
#
# pam_winbind configuration file
#
# /etc/security/pam_winbind.conf
#
[global]
# turn on debugging
;debug = no
# turn on extended PAM state debugging
;debug_state = no
# request a cached login if possible
# (needs "winbind offline logon = yes" in smb.conf)
cached_login = yes
# authenticate using kerberos
;krb5_auth = no
# when using kerberos, request a "FILE" krb5 credential cache type
# (leave empty to just do krb5 authentication but not have a ticket
# afterwards)
;krb5_ccache_type =
# make successful authentication dependend on membership of one SID
# (can also take a name)
# require_membership_of = SID,SID,SID
require_membership_of = S-1-5-21-4255311587-2195296704-2687208041-1794
# password expiry warning period in days
;warn_pwd_expire = 14
# omit pam conversations
;silent = no
# create homedirectory on the fly
mkhomedir = yes
Я добился того, что позволил только одному AD_USER или AD_GROUP войти в linux box с помощью AD-аутентификации.
Подробности перечислены здесь: (обратите внимание на шаги 7 и 8)
Я не мог заставить что-либо из вышеперечисленного работать на меня в RHEL 7. Ниже показано, что я смог заставить работать.
/etc/sssd/sssd.conf
Изменить
access_provider = ad
на access_provider = simple
+ simple_allow_groups = (скрытый) (скрытый) ALL = (ALL) ALL
перезапустить службу sssd.