При включении компьютера в домен Active Directory при помощи GUI Windows или команды NETDOM.EXE,по умолчанию вновь созданный объект попадает в контейнер (OU) Computers, который является контейнером по-умолчанию для всех вновь созданный объектов типа «Computer».
Недостаток такого подхода заключается в том, что вы не можете назначить ни одной доменной групповой политики на OU Computers, и получается, что на новых компьютерах домена (потенциально небезопасных) вы просто не сможете применить специальные параметры безопасности (помимо стандартных для всего домена).
Разберемся, где же хранятся настройки, определяющие OU по-умолчанию для компьютеров домена. Откройте консоль Active Directory Users and Computers (как установить оснастку Active Directory в Windows 7), или же консоль ADSI Edit, при помощи контекстного меню перейдите в свойства домена, а затем перейдите на вкладку Attribute Editor.
Контейнер AD, в который попадают по-умолчанию новые компьютеры, определяются в атрибуте wellKnownObjects.
Но при попытке дважды щелкнуть по этому атрибуту, появится окно с ошибкой о том, что нет зарегистрированного редактора для обработки такого типа атрибутов. Я предполагаю, что данный атрибут просто защищен от ручного внесения изменений. Поэтому для доступа к данному параметру, я воспользуюсь замечательной утилитой от Марка Русиновича — Active Directory Explorer.
Атрибут wellKnownObjects содержит примерно такую информацию:
98 39 240 175 31 194 65 13 142 59 177 6 21 187 91 15, CN=redircomp.exeNTDS Quotas,DC=LABHOME,DC=local
244 190 146 164 199 119 72 94 135 142 148 33 213 48 135 219, CN=Microsoft,CN=Program Data,DC=LABHOME,DC=local
9 70 12 8 174 30 74 78 160 246 74 238 125 170 30 90, CN=Program Data,DC=LABHOME,DC=local
34 183 12 103 213 110 78 251 145 233 48 15 202 61 193 170, CN=ForeignSecurityPrincipals,DC=LABHOME,DC=local
24 226 234 128 104 79 17 210 185 170 0 192 79 121 248 5, CN=Deleted Objects,DC=LABHOME,DC=local
47 186 193 135 10 222 17 210 151 196 0 192 79 216 213 205, CN=Infrastructure,DC=LABHOME,DC=local
171 129 83 183 118 136 17 209 173 237 0 192 79 216 213 205, CN=LostAndFound,DC=LABHOME,DC=local
171 29 48 243 118 136 17 209 173 237 0 192 79 216 213 205, CN=System,DC=LABHOME,DC=local
163 97 178 255 255 210 17 209 170 75 0 192 79 215 216 58, OU=Domain Controllers,DC=LABHOME,DC=local
170 49 40 37 118 136 17 209 173 237 0 192 79 216 213 205, CN=Computers,DC=LABHOME,DC=local
169 209 202 21 118 136 17 209 173 237 0 192 79 216 213 205, CN=Users,DC=LABHOME,DC=local
Теперь, когда мы поняли, где хранится нужный нам параметр, попробуем изменить его. Как я уже говорил, атрибут wellKnownObjects нельзя отредактировать при помощи консолей AD, наверное, это и к лучшему )). Для модификации этого параметра Microsoft разработала специальную утилиту, которая называется redircmp.exe, которая хранится в папке %SystemRoot%\System32 (на системах Windows Server 2003/2008).
Перед использованием утилиты redircmp.exe, создадим новый Organizational Unit, в который в дальнейшем будут попадать объекты Computer. Для примера я создал OU StagedComputers. Выполним следующую команду:
redircmp OU=StagedComputers,DC=LABHOME,DC=local
А затем при помощи Active Directory Explorer просмотрим содержимое атрибута wellKnownObjects (как вы увидите, оно изменилось):
170 49 40 37 118 136 17 209 173 237 0 192 79 216 213 205, OU=StagedComputers,DC=LABHOME,DC=local
98 39 240 175 31 194 65 13 142 59 177 6 21 187 91 15, CN=NTDS Quotas,DC=LABHOME,DC=local
244 190 146 164 199 119 72 94 135 142 148 33 213 48 135 219, CN=Microsoft,CN=Program Data,DC=LABHOME,DC=local
9 70 12 8 174 30 74 78 160 246 74 238 125 170 30 90, CN=Program Data,DC=LABHOME,DC=local
34 183 12 103 213 110 78 251 145 233 48 15 202 61 193 170, CN=ForeignSecurityPrincipals,DC=LABHOME,DC=local
24 226 234 128 104 79 17 210 185 170 0 192 79 121 248 5, CN=Deleted Objects,DC=LABHOME,DC=local
47 186 193 135 10 222 17 210 151 196 0 192 79 216 213 205, CN=Infrastructure,DC=LABHOME,DC=local
171 129 83 183 118 136 17 209 173 237 0 192 79 216 213 205, CN=LostAndFound,DC=LABHOME,DC=local
171 29 48 243 118 136 17 209 173 237 0 192 79 216 213 205, CN=System,DC=LABHOME,DC=local
163 97 178 255 255 210 17 209 170 75 0 192 79 215 216 58, OU=Domain Controllers,DC=LABHOME,DC=local
169 209 202 21 118 136 17 209 173 237 0 192 79 216 213 205, CN=Users,DC=LABHOME,DC=local
И наконец, с целью тестирования, я попробовал включить Windows XP (имя ПК VMXP-001) в домен LABHOME, действительно новый объект типа Computer появился в контейнере StagedComputers.
Добрый день.
Можно это сделать намного проще. Достаточно воспользоваться командой «redircmp %DN%». Для пользователей есть аналогичная команда «redirusr %DN%». Присутствует во всех версиях Windows Server, начиная с 2003
А как сделать так, чтобы новые компы попадали в определенные OU в соответсвии с принадлежностью к определенному сайту (принадлежащие определенному диапазону IP-адресов)?
Не думаю, что стандартными средствами это удастся реализовать… Тем более не вижу, как связать между собой понятия OU и сайта AD. Так либо что-то мудрить со скриптами, либо загонять компьютеры в домен скриптом, в котором нужно указать OU, куда нужно поместить компьютер
Например, таким:
Вызывающая cmd оболочка:
powershell.exe -command «Set-ExecutionPolicy RemoteSigned»
powershell.exe %~dp0netdom.ps1 %1 %2
Powershell скрипт netdom.ps1
param ($user, $ou)
add-computer -DomainName winitpro.ru -credential winitpro\$user –OUPath «OU=Computers,OU=$ou,DC=winitpro,DC=ru»
Во народ глумиться!
А нужно ли это вообще нам админам?
Точно, я понял — здесь попахивает конвеером по вводу компов в домен…
Не redircomp.exe, а redirCMP.exe
Спс, поправил
Добрый, может кто знает.
Как сделать, чтобы комп например с ОС Win10 попадал в OU «Рабочие станции Win-10», а компы на Win7 соответственно в OU «Рабочие станции Win-7». Сейчас у меня все компы валятся в OU «Рабочие станции».
Без костыля не получится. К примеру, можно сделать скрипт на DC, который раз в час/сутки проверяет OU с компьютерами по умолчанию и если тип ОС на объекте компьютера Windows 10 — объект перемещается в одну OU, если Windows 7 в другую..
Вам понадобятся командлеты Get-ADComputer (https://winitpro.ru/index.php/2015/09/28/powershell-get-adcomputer-poluchenie-dannyx-o-kompyuterax-v-active-directory/) и Move-ADObject
Статья хорошая, но не раскрыта тема а как вернуть всё назад? redircmp перемещает только в O, а как вернуть обратно в Computers?
Сам спросил — сам ответил. redircmp cn=Computers,DC=contoso,dc=com. 🙂 Спасибо.
А как вообще запретить автоматическое создание компьютеров в АД (ввод в домен только на предсозданные учетки)?
Вам нужно уменьшить параметр MachineAccountQuota до 0. Этот параметр задает сколько компьютеров может добавить в домен обычный пользователь. _https://docs.microsoft.com/en-us/troubleshoot/windows-server/identity/default-workstation-numbers-join-domain
В результате в домен смогут добавить только учетных записи с правами на OU или домен админы. Остальные пользователи не смогут.
Добрый день!
Подскажите, пожалуйста, как можно сделать следующее.
Когда я работал в одной организации, там на DC работал скрипт, который при появлении в домене машины, название которой начиналось на sovadm , переносил эту машину автоматически в соответствующий OU. И так для всех подразделений: kiradm, centradm, voradm и т.д.
Таким образом, отпадала необходимость ручками создавать машину в своей OU, можно было сразу вводить в домен, правильно обозвав первые несколько букв названия машины.
К сожалению, я не имел доступ тогда к настройкам DC, а связь с админами потерялась.
На новом месте работы хочу сделать подобное, но нигде не могу найти этот скрипт.
Подскажите, пожалуйста, нет ли на Вашем ресурсе статей, описывающих данный скрипт?
Заранее огромное спасибо!
Готово скрипта нет у меня, но там в общем то ничего сложного. Если знаете немного powershell за полдня сделаете.
1) проверяете дефолтный контейнер Computers на список компьютеров с помощью get-adcomputer (https://winitpro.ru/index.php/2015/09/28/powershell-get-adcomputer-poluchenie-dannyx-o-kompyuterax-v-active-directory/)
2) делаете foreach цикл по полученному списку имен компьютеров
3) через switch или условие с like проверяете имя на соотвествеи шаблону
4) если совпадает, переносите в целевой ou с помощью Move-ADObject
Спасибо большое за информацию! Буду копать! 🙂
Привет, ну если накопал, было бы не плох ссылочку 🙂
И ещё эту папку Computers можно удалить? что бы глаза не мазолила младшим админам?
У меня на сервере 2022 команда не срабатывает без кавычек . Тоесть
redircmp OU=StagedComputers,DC=LABHOME,DC=local — НЕ РАБОТАЕТ
redircmp «OU=StagedComputers,DC=LABHOME,DC=local» РАБОТАЕТ
Добрый день,
Подскажите, пожалуйста, возможно сделать, чтоб при вводе компьютера в домен владельцем компьютера(свойства -> безопасность->дополнительно->владелец) была всегда определенная группа безопасности, а не тот пользователь, кто ввел этот компьютер в домен?
Автматически не получится так. Придется запилить какой-то скрипт, который будет отслеживать появление новых учеток компьютеров в OU, где оно создаются и менять владельца в ACL объекта ( Set-Acl + SetOwner свойство ) на нужную вам группу
Понял, спасибо.