26 августа 2011 г.

Прогрессирующая паранойя

Вот уже почти 2 года я выполняю повседневные неадминистративные задачи под учеткой с правами администратора всего. И совсем недавно то ли паранойя одержала верх над моим пофигизмом, то ли просто стало скучно и захотелось чего-то нового, в общем, решил я создать отдельных пользователей для административных задач и понизить права всего IT-отдела до рядовых пользователей, чтобы не сидели под админами. Начинать решил с себя, чтобы сначала выявить все подводные грабли и только потом пересаживать всех остальных.

Итак, для каждого инженера, которому будет разрешено управлять сетевой инфраструктурой (AD, DNS, DHCP и т.п.) будет две учетные записи:
  • Основная - используется для повседневной работы. Является рядовым пользователем домена с правами локального администратора на рабочем компьютере.
  • Админская - используется для управления доменом. Является администратором домена и прочих служб, по необходимости.
Все неадминистративные учетные записи сотрудников IT-отдела  (далее инженеры) входят в группу инженеров (IT).
Все административные учетные записи (далее администраторы) входят в группу администраторов (IT powered).
Инженеры без допуска к управлению сетевой инфраструктурой админских учетных записей иметь не будут.
Учетные записи, по умолчанию, состоят только в 2х группах: Пользователи домена и соответствующая группа безопасности (инженеры или администраторы). Разграничение прав осуществляется на основе групп.

Что нужно в идеале:
  • инженеры должны иметь возможность запускать на своем компьютере программы от имени администраторов домена
  • инженеры должны иметь доступ на изменение ко всем общим ресурсам, которым были доступны им ранее, до введения новой системы безопасности. Хотя тут все не однозначно, например, для предотвращения деятельности вредоносных программ, которые копируют себя во все доступные сетевые папки, было бы правильно разрешить запись только в самые необходимые ресурсы
  • инженеры должны иметь права на подключение к серверам в качестве операторов сервера
  • инженеры должны иметь права на подключение компьютеров к домену. Как новых, так и тех, для которых администратор заранее создал учетную запись

Запуск программ от имени администратора домена
Все очень просто: достаточно сделать правый клик с зажатым shift'ом по программе или, например, файлу оснастки консоли MMC, и выбрать команду "Запуск от имени другого пользователя" (для Windows с ядром 6.x) или "Запуск от имени..." (для более старых версий Windows).

Общие ресурсы
Предполагаю сделать следующим образом:
  • инженеры имеют доступ на запись к пользовательским данным - это позволит решать пользовательские проблемы без лишних задержек
  • инженеры имеют доступ только на чтение к административным ресурсам, таким как папки с дистрибутивами, WDS и т.п.
В соответствии с правилами хорошего тона организации сетевых папок для каждой папки создается две доменные локальные группы безопасности: на запись и чтение. Для групп настраиваются соответствующие права. Управление разрешениями для аккаунтов и глобальных групп осуществляется на основе членства в локальных группах безопасности общего ресурса (стратегия доступа A->G->DL<-P)

Подключение к серверу в качестве оператора
Выдержка из руководства Microsoft:

Операторы сервера
На контроллерах домена члены этой группы могут интерактивно входить в систему, создавать и удалять общие ресурсы, запускать и останавливать некоторые службы, выполнять резервное копирование и восстановление файлов, форматировать жесткий диск и выключать компьютер. Эта группа не имеет членов по умолчанию. Добавлять членов в эту группу следует с осторожностью по причине значительных возможностей членов группы на контроллерах домена.
 

Права по умолчанию: 
Архивация файлов и каталогов; Изменение системного времени; Принудительное удаленное завершение работы; Разрешение локального входа; Восстановление файлов и каталогов; Завершение работы системы"

Исходя из этого, добавлять в группу "Операторы сервера" рядовых инженеров не стоит, поэтому я сделал немного иначе: разрешил инженерам вход на сервер, как пользователи службы терминалов/удаленного рабочего стола. А вот "администраторов" можно добавить в группу "Операторы сервера", и, на всякий случай, так же добавить их в группу пользователей удаленного рабочего стола/службы терминалов. Хотя политика нашего домена разрешает вход администраторов домена на любой сервер, что, на мой взгляд, вполне логично.

Делегирование прав на подключение компьютеров к домену
Существует два сценария:
  1. Подключение нового компьютера, для которого нет заранее созданной учетной записи
  2. Подключение компьютера с учетной записью созданной заранее
В первом случае, перед подключением сначала создается учетная запись компьютера в контейнере по умолчанию, и после этого происходит подключение к домену.
Во втором - подключение происходит сразу, в тот OU, где находится учетная запись для компьютера. Соответственно, учетная запись может располагаться в любом OU.

Решение было построено достаточно быстро и просто, благодаря статье от Microsoft.
Пользователю, подключающему компьютер, должны быть делегированы следующие права на контейнер по умолчанию для новых компьютеров (чаще всего это cn=Computers):

  • Создание объекта "Компьютер"
  • Запись всех свойств для объекта "Компьютер"
  • Сброс пароля для объекта "Компьютер"



Подключение нового компьютера
Доступ настраивается в свойствах контейнера по умолчанию на закладке Безопасность. Далее: Дополнительно - Разрешения - Добавить
  1. Указываем группу инженеров, в выпадающем списке Применять указываем Только этот объект, ставим галочку в колонке Разрешить напротив разрешений Создание объектов: Компьютер и нажимаем OK.
  2. Снова добавляем группу инженеров. В списке Применять указываем Дочерние объекты: Компьютер. Ставим галочки в колонке Разрешить напротив разрешений Записать все свойства и Сброс пароля. Ставим галочку Применять эти разрешения только внутри этого контейнера. Нажимая на ОК, закрываем все диалоговые окна.
Подключение компьютера для которого учетная запись создана заранее
Описанные ниже действия нужно применить ко всем контейнерам, в которых могут размещаться заранее созданные записи компьютеров.
  1. Указываем группу инженеров, в выпадающем списке Применять указываем Этот объект и все дочерние объекты, ставим галочку в колонке Разрешить напротив разрешений Создание объектов: Компьютер и , нажимаем OK.
  2. Снова добавляем группу инженеров. В списке Применять указываем Дочерние объекты: Компьютер. Ставим галочки в колонке Разрешить напротив разрешений Записать все свойства и Сброс пароля. Снимаем галочку Применять эти разрешения только внутри этого контейнера. Нажимая на ОК, закрываем все диалоговые окна.
На этом настройка делегирования завершена.
Единственный момент, который остался для меня непонятным - почему, даже при заранее созданной учетной записи компьютера, мастер идентификации выдает сообщение "В домене ... учетную запись для вашего компьютера найти не удалось"? Возможно, стоит об этом спросить на форуме MS. Хотя, на мой взгляд, это не связанно с делегированием, т.к. для некоторых машин учетная запись находится, для других - нет; при том, что учетная запись существует.

Комментариев нет:

Отправить комментарий