Я настраиваю виртуальную машину сервера Ubuntu 11.04 для использования в качестве сервера базы данных. Это сделало бы жизнь каждого человека проще, если бы мы могли войти в систему, используя учетные данные Windows, и, возможно, даже заставить машину работать с текущей безопасностью на основе AD, которую мы получили в другом месте.
Первую часть этого было действительно легко выполнить - apt-get install likewise-open
и я был в значительной степени в бизнесе. Проблема, с которой я сталкиваюсь, - это включение наших администраторов в группы sudoers - кажется, я не могу ничего взять. Я пробовал:
а) usermod -aG sudoers [username]
б) добавление имен пользователей в нескольких форматах (DOMAIN \ user, user @ domain) в файл sudoers.
Ничего из этого, казалось бы, не заняло, но я все равно получаю сообщение "DOMAIN \ user отсутствует в файле sudoers. Об этом инциденте будет сообщено".
Итак, как мне добавить нелокальных пользователей в sudoers?
источник
%Domain^Admins ALL=(ALL) ALL
Проблема с другими предложениями заключается в том, что
Вместо этого я хотел что-то
Фактическим решением является использование SSSD и расширение схемы AD. Таким образом, SSSD периодически выбирает настройки sudo и учетные данные пользователя из AD и поддерживает их локальный кеш. Затем правила sudo хранятся в объектах AD, где вы можете ограничить правила даже компьютерами, пользователями и командами - и все это, даже не затрагивая файл sudoers на рабочих станциях.
Точное руководство слишком длинное для объяснения здесь, но вы можете найти пошаговое руководство и некоторые сценарии, которые помогут с автоматизацией:
TL; DR:
ОБЪЯВЛЕНИЕ
Возьмите последнюю версию sudo , получите файл doc / schema.ActiveDirectory , затем импортируйте его (не забудьте изменить путь к домену в соответствии с именем вашего домена):
Проверьте это с помощью ADSI Edit: открыть схему именования контекста и внешнего вида для sudoRole класса.
Теперь создайте подразделение sudoers в корневом каталоге вашего домена. Это подразделение будет содержать все настройки sudo для всех ваших рабочих станций Linux. Под этим OU создайте объект sudoRole. Чтобы создать объект sudoRole, вы должны использовать ADSI Edit, но после его создания вы можете использовать Active Directory Users and Computers для его изменения.
Предположим, у меня есть компьютер с именем foo32linux , пользователь с именем stewie.griffin, и я хочу позволить ему запускать все команды с sudo на этом компе. В этом случае я создаю объект sudoRole под подразделом sudoers . Для sudoRole вы можете использовать любое имя, какое хотите - я придерживаюсь имени компьютера, так как я использую правила для каждого компьютера. Теперь установите его атрибуты следующим образом:
Для команд вы также можете использовать определенные записи, такие как / bin / less или что угодно.
SSSD
Добавьте в ваш /etc/sssd/sssd.conf хотя бы:
SSSD обновляет свой локальный кеш обновленными правилами каждые несколько часов, но самый простой способ проверить это - просто перезагрузить компьютер. Затем войдите в систему с пользователем AD и проверьте:
В нем должны быть перечислены все связанные записи, которые вы добавили к этому пользователю и компьютеру. Очень просто!
источник
Лучшая информация, которую я мог найти по этому вопросу, здесь:
http://www.mail-archive.com/likewise-open-discuss@lists.likewisesoftware.com/msg00572.html
По сути, он просит вас изменить
/etc/sudoers
файл, указав правильную конфигурацию, чтобы пользователи из группы вашего администратора в AD имели доступ ко всем привилегиям.Если вам нужно быть избирательным и ограниченным пользователем, вы можете сделать это тоже. Но он предупреждает, что вы должны убедиться, что выяснили, какое имя пользователя в системе Linux, используя
getend passwd
команду, как показано.источник
Используя Centify direct, я добавил пользователя домена в файл / etc / sudoers.
(Пользователь домена) ALL = (ALL) ALL
источник
Я использую общую команду
и заменить
DOMAIN\user
наDOMAIN\\\username
.источник