Экспорт информации из снимков Active Directory в Windows Server 2008
19.11.2010
Автор: Henrik Walther
Перевод: exams.com.ua
Источник: www.petri.co.il
Вступление
В Windows Server 2008 снимки Active Directory позволяют администратору вручную, или с помощью программ, в нужное время создавать резервные копии баз данных Active Directory. Вы можете просматривать данные внутри снимков Active Directory на контроллере домена, без необходимости запуска сервера в режиме Directory Services Restore. Эти снимки можно хранить на локальном жестком диске контроллера домена (DC), или перемещать на внешнее хранилище. Больше информации на эту тему смотрите в статье " Управление снимками Active Directory в Windows Server 2008." и "Автоматизация создания снимков Active Directory".Процесс создания и использования снимков AD включает следующую процедуру:
- Или вручную, либо воспользовавшись планировщиком, запускайте NTDSUTIL для создания снимков разделов, которые хранят базы данных AD DS.
- Запустите NTDSUTIL для отображения, и монтирования снимков, которые вы хотите просматривать.
- Запустите DSAMAIN для размещения снимка раздела на сервере LDAP.
Примечание: В отличие от Windows Server 2003, в Windows Server 2008 включено LDP.exe и ADSIEDIT.msc, и теперь нет необходимости устанавливать дополнительные инструменты.
Отметьте, что эти данные можно только читать и по умолчанию просматривать снимки могут только участники групп Domain Admins и Enterprise Admins. На AD снимках храниться конфиденциальная информация, и вы должны удостовериться в том, что ваши AD DS снимки надежно защищены от несанкционированного доступа так как, имея доступ к снимкам, злоумышленник может использовать их для получения конфиденциальных данных, которые могут храниться на AD DS.
Основное отличие между использованием инструментов, которые мы будем рассматривать, со снимками AD и с реальной базой данных Active Directory заключается в номере порта. При подключении к реальной базе данных AD, номер порта LDAP (389) по умолчанию указывать обычно не нужно, а при подключении к AD снимку этот номер указывать обязательно. Номер порта тот же самый, что и в DSAMAIN и коммутаторе порта ldap.
Во всех последующих примерах будет использоваться порт 10389. На тестовом домене было создано хранилище каталогов с названием "Dev" с несколькими пользователями. Был создан снимок, а затем были произведены изменения в среде пользователей реального Active Directory.
Использование Active Directory – DSA.msc
Рассмотрим, возможно, самый простой способ для того, чтобы увидеть информацию, которая находится на снимке. Преимущество данного инструмента в Windows Server 2008 заключается в том, что эта операционная система теперь имеет часть выполняет часть функций ADSIEDIT, что позволяет вам просматривать практически все атрибуты для объектов в разделе домена AD.Для использования DSA.msc со снимком AD, следуйте данному руководству:
- Авторизуйтесь в контроллере домена Windows Server 2008, на котором был смонтирован снимок AD, как участник группы Domain Admins.
- Откройте меню Пуск. В поле поиска введите DSA.msc и нажмите Enter.
- Вы увидите реальный AD, который можно обозревать. Данное окно DSA.msc будет использоваться для обращения снимку.
- Повторите действия пункта №2.
- В данном окне DSA.msc, нажмите правую кнопку мышки на имени домена и выберите Change Domain Controller.
- В окне Change Directory Server, нажмите на элемент <Type a Directory Server name[:port] here>, и когда он превратится в текст, который можно изменять, измените его на имя сервера и номер порта, которые вы использовали в DSAMAIN. В данном случае на WIN2008-DC1:10389.
- После того, как вы нажмете Enter, приложение выполнит проверку указанной цели и если все пройдет успешно, поле статус получит значение "Online". Нажмите OK.
- Разместите рядом 2 окна DSA.msc. Вы увидите, что одно из окон работает в режиме «только чтение». На нем нельзя ничего создавать или изменять. Даже кнопка X, хотя и выглядит доступной, вы с ее помощью ничего удалить не сможете.
- Если открыть окно свойств одного из пользователей (в данном случае"John" для Dev OU), в версии снимка значение атрибута будет в затемненном виде. Вы можете использовать информацию для ручного редактирования значений в реальном снимке базы данных AD, руководствуясь значениями, которые видно в версии снимка.
- Когда все будет готово, закройте второе окно DSA.msc
Использование ADSIEDIT.msc
Основным преимуществом ADSIEDIT.msc перед DSA.msc – можно считать тот факт, что его можно использовать для подключения к разделам AD (раздел конфигурации, раздел схемы и раздел домена). Программа также позволяет проводить графическое обозревание объектов и атрибутов.Примечание: ADSIEDIT.msc входит в состав Windows Server 2008.
Для использования ADSIEDIT со снимками AD следуйте данному руководству:
- Авторизуйтесь в контроллере домена Windows Server 2008, на котором было смонтировано снимок AD, как участник группы Domain Admins
- Нажмите Пуск. В поле поиска введите ADSIEDIT.msc и нажмите Enter.
- В окне ADSIEDIT.msc нажмите правую кнопку на ADSI Edit и выберите элемент Connect To.
- В окне Connection Settings введите имя сервера и номер порта, которые вы использовали в DSAMAIN. В данном случае это WIN2008-DC1:10389. Когда все будет готово, нажмите OK.
- Если все пойдет хорошо, информация об AD снимке отобразиться в иерархическом древе на панели слева. Вы можете просмотреть панель с древом, и переместится к OU и объекту, который вам нужен. Заметьте, что и здесь информацию также можно только читать.
- После выполнения всех необходимых действий просто закройте ADSIEDIT.msc.
Использование LDP.exe
Как и ADSIEDIT.msc, LDP.exe можно использовать для подключения к другим разделам AD – разделам свойств схемы и разделам домена. Однако здесь обозревание объектов и атрибутов проводится в текстовом виде, что в некоторых случаях может быть полезно.Примечание: LDP.exe входит в состав Windows Server 2008.
Для использования LDP.exe со снимками AD пользуйтесь данным руководством:
- Авторизуйтесь в контроллере домена Windows Server 2008, на котором было смонтировано снимок AD, как участник группы Domain Admins
- Нажмите Пуск. В поле поиска введите LDP.exe и нажмите Enter.
- В окне LDP нажмите на элемент выпадающего меню Connections и выберите Connect.
- В окне connect, введите имя сервера и номер порта, которые вы использовали в DSAMAIN. В данном случае WIN2008-DC1 и 10389. Затем нажмите OK.
- Если все прошло хорошо, вы увидите, как информация о подключении появляется на панели справа. При необходимости изменения имени пользователя и пароля, с помощью которых вы подключаетесь, выберите Connections > Bind, а за тем измените эту информацию.
- Нажмите View > Tree.
- Вы можете использовать ниспадающее меню для выбора как контекста присвоения имен по умолчанию – раздела домена AD, так раздела конфигурации или схемы. Также вы можете вводить Distinguished Name объекта, который разыскиваете.
- Просмотрите древо на панели слева. Здесь вы найдете объект OU, который ищите. После двойного нажатия на нужном элементе, вы увидите его атрибуты на панели справа.
- По окончанию работы, просто закройте LDP.exe.
И еще один метод – использование скриптов VBS
Здесь мы подробно задерживаться не будем, но как вы наверняка знаете, вооружившись хорошим VBC скриптом, со снимком Active Directory можно сделать довольно много. Так как смонтированные и открытые AD снимки можно только считывать, VBC скрипты можно использовать для экспорта из снимков любого типа данных.В данной статье не рассматриваются подробные примеры скриптов, но на Ken St. Cyr's Blog находится неплохой скрипт, с которым автор данной статьи охотно с нами делится. Данный скрипт считывает данные с каждой учетной записи и экспортирует атрибуты samAccountName и displayNameв файлTSV (Tab Separated Values), который можно открыть в текстовом формате или в Excel.
Далее приведен код скрипта (в нем используется порт 10389, измените его на тот номер порта, который вы использовали в команде DSAMAIN):
1 | '--------------------------------------------------------------------------<br> ' NAME: export -attr.vbs<br> ' DATE: 3/6/2008<br> ' DESCRIPTION: Connects to a directory service provider on the specified<br> ' port and exports a list of attributes for each user object<br> ' in the directory to a tab-separated values file .<br> ' AUTHOR: Ken St. Cyr<br> ' -------------------------------------------------------------------------- |
1 | Option Explicit |
1 | ' Define our parameters<br> CONST LDAPPORT = 10389<br> CONST DCNAME = "localhost" <br> CONST ATTRIBUTES = "samAccountName,displayName" <br> CONST OUTPUT_FILE = "attribute_backup.tsv" |
1 | ' Create the necessary objects for writing to a file <br> Dim objFSO : Set objFSO = CreateObject( "Scripting.FileSystemObject" )<br> Dim objFile : Set objFile = objFSO.OpenTextFile(OUTPUT_FILE, 8, True) |
1 | ' Get the RootDSE for the directory on the port that we want<br> Dim objRootDSE : Set objRootDSE = GetObject( "LDAP://" & DCNAME & ":" & _<br> LDAPPORT & "/RootDSE" ) |
1 | ' Create the connection object for the AD provider<br> Dim objConnection : Set objConnection = CreateObject( "ADODB.Connection" )<br> objConnection.Provider = "ADsDSOObject" <br> objConnection.Open "Active Directory Provider" |
1 | ' Define the search to execute<br> Dim objCommand : Set objCommand = CreateObject( "ADODB.Command" )<br> objCommand.CommandText = "<LDAP://" & DCNAME & ":" & LDAPPORT & "/" & _<br> objRootDSE.Get( "defaultNamingContext" ) & ">;(&objectCategory=user);" & _<br> ATTRIBUTES & ";subtree" <br> objCommand.ActiveConnection = objConnection |
1 | ' Execute the search<br> Dim objRecordSet : Set objRecordSet = objCommand.Execute<br> objRecordSet.MoveFirst |
1 | ' Go through each result about output the attributes to a Tab-Separated file <br> While Not objRecordSet.EOF<br> Dim strSAMAccountName : strSAMAccountName = objRecordSet.Fields( "samaccountname" )<br> Dim strDisplayName : strDisplayName = objRecordSet.Fields( "displayName" )<br>
objFile.WriteLine strSAMAccountName & vbtab &
strDisplayName<br> objRecordSet.MoveNext<br> Wend |
1 | objFile.Close |
1 | WScript.Echo objRecordSet.RecordCount & " entries written to " & OUTPUT_FILE<br> |
Безопасность
Не забудьте отключится от снимка AD и демонтировать его после экспорта требуемых данных. Смотрите статью Управление снимками Active Directory в Windows Server 2008.Источник http://www.exams.com.ua/articles/administration/windows/2594.htm
Комментариев нет:
Отправить комментарий