Возникла такая необходимость почистить AD от давно мертвых компов, начал искать решения и нашел просто замечательную статью. Да простить меня автор, но я просто обязан опубликовать ее, ибо сберегла мне она очень много времени. надеюсь и вам поможет. Публикую слово в слово!
Рано или поздно в Active Directory появляются «мертвые» машины. Их уже нет. Их списали, переименовали, забросили в углу. Они не работают, а учетные записи от них остались. В большой компании они занимают лишнее место в и без того не маленькой базе AD. Встает вопрос о том, как эти записи найти и уничтожить.
Есть коммерческая утилита Janitor (в дословном переводе — уборщик) от Special Operations Software, но большой необходимости я в ней не вижу, ибо тот же функционал предлагает бесплатная утилитка OldCmp. Она без GUI, но вряд ли это недостаток.
OldCmp — один единственный исполняемый файл. Чтобы найти машины, не использовавшиеся 100 дней, запускаем:
В ответ утилита создаст файл HTML с отчетом. О том, сколько компьютер не использовался, OldCmp узнает по дате последней смены пароля. Не путайте со сменой пользовательского пароля. У компьютеров есть свои пароли, которые они меняют без вашей помощи, по умолчанию в домене каждые 30 дней. В домене на базе Windows 2003 можно обрабатывать машины не по дате смены пароля, а по дате последнего логона на них, добавив ключ -llts:
Далее можно удалять машины, но лучше сначала отключить, и посмотреть что будет 🙂
Если никаких проблем не выявлено, можно удалять:
Все остальное можно найти в документации к программе. Ниже привожу примеры из документации, по ним и так все понятно:
oldcmp /?
Display this help
Ex2a:
oldcmp —report
Generate html report of all cmpaccs > 90 days old
Ex2a:
oldcmp —report -format dhtml —sh
Generate dhtml report of all cmpaccs > 90 days old
Open the report after generating it
Ex2c:
oldcmp —report -format csv
Generate csv report of all cmpaccs > 90 days old
Ex3a:
oldcmp —report —age 0
Generate html report of all cmpaccs
Ex3b:
oldcmp —report —age 0 -format csv —delim tab
Generate csv (tab delimited) report of all cmpaccs
Ex4:
oldcmp —report —age 0 —onlydisabled
Generate html report of all disabled cmpaccs
Ex5:
oldcmp —report —age 0 —onlydisabled —sort cn
Generate html report of all disabled cmpaccs, sort on name
Ex6:
oldcmp —delete —age 0 —onlydisabled
Generate html report of all disabled cmpaccs, sort on pwage
Will show you what it would try to delete. Only up to 10.
Ex7:
oldcmp —delete —age 0 —onlydisabled —safety 100
Generate html report of all disabled cmpaccs, sort on pwage
Will show you what it would try to delete. Only up to 100.
Ex8:
oldcmp —delete —age 0 —onlydisabled —unsafe
Generate html report of all disabled cmpaccs, sort on pwage
Will show you what it would try to delete. All cmpaccs.
Ex9:
oldcmp —delete —age 0 —onlydisabled —unsafe —forreal
Generate html report of all disabled cmpaccs, sort on pwage
Will REALLY DELETE all accounts identified.
Ex10:
oldcmp —disable —unsafe —forreal
Generate html report of all cmpaccs > 90 days, sort on pwage
Will REALLY DISABLE all accounts identified.
Ex11:
oldcmp —report —sort OS —age 0 —maxage 60
Generate html report of all cmpaccs still valid, sort on OS
Ex12:
oldcmp —report —af “(operatingsystem=Windows XP Professional)” —onlydisabled —age 0
Generate html report of all disabled Windows XP machines
Ex13:
oldcmp —report —b ou=mycmps,dc=domain,dc=com
Generate html report of cmpaccs >90 days in specified OU
Добавить комментарий