13 июня 2024, 20:00:46

Новости:

Чтобы использовать все возможности форума на смартфоне или планшете необходимо в браузере выбрать настройку "Версия для ПК".


avatar_Feles

Домен

Автор Feles, 02 февраля 2007, 11:22:19

0 Пользователей и 1 гость просматривают эту тему.

Feles

Я полагаю, что достаточно много народу рано или поздно сталкивается с необходимостью переименования домена или контроллера домена. На гратисе я подобной темы не видела, а потому и пишу. Я, собственно говоря не исключение из общего правила :D, потому вчера я и озадачилась этой проблемой. Мануал по этому делу, написанный доблестными бойцами Майкрософта, занимает порядка 84-х страниц и, надо сказать, я к прочтению 10-й уже поняла, что проще делать только изредка туда заглядывать. Я вот и решила внести свою лепту и в общем могу написать как я это переименовывала и какие косяки при этом возникли и как я из этих косяков потом выползала. (надо сказать что почти никаких, хотя я потом уже поняла что делала все через задницу, однако все работает :D) следовательно, в качестве так сказать *перекрестного опыления*  :D , могу поделиться опытом, потому что как я заметила, тема в общем народ интересует. Следовательно, общественность! Если тема интересует - пишите, бум тему развивать, а если нет..ну.. и так бывает  :D  

Думать надо о том, о чем надо думать, а о том, о чем не надо думать - думать не надо (с) (В.П Макаров)

Feles

Господа,какой смысл переносить тему из раздела Windows в раздел Интернет? Тема напрямую связана с Windows и к интернету не имеет никакого отношения.  Или в этот раздел перемещаются все тему связанные с сетями? :D  

Думать надо о том, о чем надо думать, а о том, о чем не надо думать - думать не надо (с) (В.П Макаров)

Disant

Цитироватьпереименования домена или контроллера домена

Никогда о таком не слышал. Какого домена, объясни...

Duke

Feles
Доменная система - основа интернета ;) а АД Window это только сервер позволяющий создавать мини инет в локалке ( утрированно конечно :) )
А так тема очень интересная !!! Так что вопрос первый ;) Резервная копия АД !!

Feles

03 февраля 2007, 00:11:47 #4 Последнее редактирование: 09 февраля 2007, 18:03:17 от Feles
Пардон за флуд, но сегодня уже не получится.Время позднее, домой бы вообще как-нить попасть еще..А на выходных не до доменов, долгих лет им жизни..Не до Нета и не до компов :D В понедельник обещаюсь начать повествование.
А доменная система пусть основа Нета, но я думаю, что народ, который будет искать такие штуки полезет в раздел Windows или что-то типа *Локальные сети*. Вряд ли полезут сюда искать. :)

Думать надо о том, о чем надо думать, а о том, о чем не надо думать - думать не надо (с) (В.П Макаров)

Feles

09 февраля 2007, 17:59:07 #5 Последнее редактирование: 09 февраля 2007, 18:07:04 от Feles
Добралась таки.
Переименование домена.
Вариант номер первый и наиболее простой, для людей у которых MS Exchange нет. Для тех у кого есть, напишу позднее, что там надо добавить.
Итак. В общем для начала можно просто забэкапить все, а еще лучше снять образ системы, чтобы всегда можно было вернутся к начальному. Но на самом деле, если делать все правильно, проблем вообще не будет. В мое второе переименование, глюков вообще не возникло ни одного.
Итак. Что нам нужно.
1. Нам нужен компьютер, который будет введен в домен и на котором будет установлена ОС WinServer 2003, но не контроллер домена.
2. Диск с Винсервером 2003. Причем в идеале - лицензионный, потому как на дисках типа - *Вся Винда в одном флаконе* нужных утилиток нет.
Вот, собственно говоря, и все. Все действия будут проводится на компе с Винсервером, не контроллере домена.
Ну..поехали :) (Гагарин, блин :D)

1. На контроллере добавляем новые зоны днс, а старые оставляем. Надо сказать, что когда я переименовывала первый домен, я зоны создать забыла. :D В результате ничего страшного не случилось. Ну почти :D Но об этом позже. :)

2. Поднимаем уровань функциональности, сперва домена, а потом леса до 2003го.В Active Directory Domains and Trusts правой кнопкой мыши и *Изменить режим работы домена* потом *леса* (Raise functional level, если Винда английская).

3. После этого, переходим на управляющую станцию и контроллер домена больше не трогаем.
Создаем на диске папку. К примеру *RenameDomain*. Основные рабочие папки будут: эта, system32 и Program Files\Support Tools.

4. В папку C:\RenameDomain копируем все из папки на диске с винсервером \valueadd\msft\mgmt\domren\ и смотрим чтобы в папку скопировались файлы rendom.exe и gpfixup.exe

5. Из папки Support\Tools с диска с Винсервером надо инсталлировать Support Tools. Просто запускаем suptools.msi (правой кнопкой мыши - *установить*). Бойцы Майкрософта просят проследить чтобы *утилиты repadmin.exe, dfsutil.exe были проинсталлированны на управляющую станцию.*
Да, кстати. Еще. Майкрософтовские бойцы утверждают, что для всего этого художества, вы должны быть Enterprize админом в домене и админом на рабочей станции.

6. Запускаем командную строку. (Я не буду далее прямо подробно и пошагово расписывать очевидные вещи, потому как вполне логично, что если человек не в курсе как общаться с командной строкой, он вряд ли полезет домен переименовывать.)Переползаем в директорию RenameDomain. Набираем
rendom /list.
С помощью этой команды управляющая станция коннектится с контроллером домена, который выполняет роль domain naming master. Если конроллер недоступен - выкинет с ошибкой.
Этой командой в нашей директории создасться файлик domainlist.xml. В нем содержится полное описание структуры леса в виде списков разделов каталогов всех доменов леса и разделов приложений. Дальше, мы его копируем
copy domainlist.xml domainlist-save.xml.
Пример привожу прямо из мануала майкрософтовцев. Вот как этот файлик выглядит для леса с двумя доменами [Для просмотра ссылки зарегистрируйтесь] (NetBIOS имя COHOVINEYARD) и [Для просмотра ссылки зарегистрируйтесь] (NetBIOS имя SALES)
<?xml version = "1.0"?>
<Forest>
 <Domain>
   <!-- PartitionType:Application -->
   <Guid>59add6bb-d0e8-499e-82b9-8aaca5d3e18b</Guid>
   <DNSname>[Для просмотра ссылки зарегистрируйтесь]</DNSname>
   <NetBiosName></NetBiosName>
   <DcName></DcName>
 </Domain>
 <Domain>
   <Guid>89cf8ae3-f4a3-453b-ac5c-cb05a76bfa40</Guid>
   <DNSname>[Для просмотра ссылки зарегистрируйтесь]</DNSname>
   <NetBiosName>SALES</NetBiosName>
   <DcName></DcName>
 </Domain>
 <Domain>
   <!-- PartitionType:Application -->
   <Guid>f018941b-c899-4601-bfa7-5c017e9d31e7</Guid>
   <DNSname>[Для просмотра ссылки зарегистрируйтесь]</DNSname>
   <NetBiosName></NetBiosName>
   <DcName></DcName>
 </Domain>
 <Domain>
   <!-- PartitionType:Application -->
   <Guid>f018941b-c899-4601-bfa7-5c017e9d31f3</Guid>
   <DNSname>[Для просмотра ссылки зарегистрируйтесь]</DNSname>
   <NetBiosName></NetBiosName>
   <DcName></DcName>
 </Domain>
 <Domain>
   <! -- - ForestRoot -->
   <Guid>89cf6b34-d753-32a8-da6b-6a8e04bc48a4</Guid>
   <DNSname> [Для просмотра ссылки зарегистрируйтесь]</DNSname>
   <NetBiosName>COHOVINEYARD</NetBiosName>
   <DcName></DcName>
 </Domain>
</Forest>

7. Открываем его с помощью обычного текстового редактора и заменяем все DNS имена и NetBIOS имена - новыми.

Т.е. после замены будет так:
<?xml version = "1.0"?>
<Forest>
 <Domain>
   <!-- PartitionType:Application -->
   <Guid>59add6bb-d0e8-499e-82b9-8aaca5d3e18b</Guid>
   <DNSname>[Для просмотра ссылки зарегистрируйтесь]</DNSname>
   <NetBiosName></NetBiosName>
   <DcName></DcName>
 </Domain>
 <Domain>
   <Guid>89cf8ae3-f4a3-453b-ac5c-cb05a76bfa40</Guid>
   <DNSname>[Для просмотра ссылки зарегистрируйтесь]</DNSname>
   <NetBiosName>SALES</NetBiosName>
   <DcName></DcName>
 </Domain>
 <Domain>
   <!-- PartitionType:Application -->
   <Guid>f018941b-c899-4601-bfa7-5c017e9d31e7</Guid>
   <DNSname>[Для просмотра ссылки зарегистрируйтесь]</DNSname>
   <NetBiosName></NetBiosName>
   <DcName></DcName>
 </Domain>
 <Domain>
   <!-- PartitionType:Application -->
   <Guid>f018941b-c899-4601-bfa7-5c017e9d31f3</Guid>
   <DNSname>[Для просмотра ссылки зарегистрируйтесь]</DNSname>
   <NetBiosName></NetBiosName>
   <DcName></DcName>
 </Domain>
 <Domain>
   <! -- - ForestRoot -->
   <Guid>89cf6b34-d753-32a8-da6b-6a8e04bc48a4</Guid>
   <DNSname> [Для просмотра ссылки зарегистрируйтесь]</DNSname>
   <NetBiosName>COHOWINERY</NetBiosName>
   <DcName></DcName>
 </Domain>
</Forest>

8.Смотрим, что у нас получилось, то-есть новую структуру.Набираем
rendom /showforest

9.Теперь если мы не в нашей любимой директории - переползаем туда и набираем
rendom /upload
Что здесь фактически происходит: происходитгенерирование инструкций переименования домена, которые необходимы для создания новой структуры леса.Этой командой структура леса - которая отображена в скорректированном нами файле переводится в инструкции обновления каталога, которые удаленно выполнятся на каждом контроллере леса.Короче, инструкции сгенерируются и загрузятся в Active Directory. Еще, в результате сгенерируется файл состояния - dclist.xml. Там будет отображаться состояние каждого контроллера домена.
Опять же для нашего примера (вернее, для майкрософтовского, я просто примеры у них сперла,хотя можно и мои файлы привести в пример) Итак, для случая описанного выше, файл dclist.xml выглядит так, типа по два контроллера на два домена:

<?xml version = "1.0"?>
<DcList>
  <Hash>zzzzzzzz</Hash>
  <Signature>zzzzzzzz</Signature>
  <DC>
    <Name>[Для просмотра ссылки зарегистрируйтесь]</Name>
    <State>Initial</State>
    <LastError>0</LastError>
    <Password />
    <LastErrorMsg />
    <FatalErrorMsg />
    <Retry></Retry>
  </DC>
  <DC>
    <Name>[Для просмотра ссылки зарегистрируйтесь]</Name>
    <State>Initial</State>
    <LastError>0</LastError>
    <Password />
    <LastErrorMsg />
    <FatalErrorMsg />
    <Retry></Retry>
  </DC>
  <DC>
    <Name>[Для просмотра ссылки зарегистрируйтесь]</Name>
    <State>Initial</State>
    <LastError>0</LastError>
    <Password />
    <LastErrorMsg />
    <FatalErrorMsg />
    <Retry></Retry>
  </DC>
  <DC>
    <Name>[Для просмотра ссылки зарегистрируйтесь]</Name>
    <State>Initial</State>
    <LastError>0</LastError>
    <Password />
    <LastErrorMsg />
    <FatalErrorMsg />
    <Retry></Retry>
  </DC>
</DcList>

Этот файл показывает состояние контроллеров. (Тэги <State></State>)И для КАЖДОГО контроллера состояние будет менятся и менятся сугубо индивидуально :)

9. Итак, инструкции по переименованию у нас загрузились на domain naming master, теперь надо чтобы их получили все остальные контроллеры домена.
Ищем, где у вас лежат файлики repadmin.exe и dsquery.exe (первая кажись, д.б. в Program Files\Support Tools, а вторая в system32, но лучше перепроверить)
10. С помощью утилиты dsquery.exe узнаем имя domain naming mastera.
Dsquery server -hasfsmo name
Получили. Чудесно.Теперь:

11. repadmin /syncall /d /e /P /q Domainnamingmaster
Domainnamingmaster - DNS-имя как раз domain naming mastera.
Все. Если ошибок не выползло - все замечательно.

12.Теперь приводим все контроллеры домена в состоянии боевой готовности. То-есть фактически, здесь проверяется, насколько контроллеры готовы и в состоянии принять инструкции по переименованию.
Переползаем в нашу любимую директорию и
rendom /prepare
Потом, когда завершится, открываем файлик состояний dclist.xml и смотрим чтобы ВСЕ были в состоянии Prepared. Если хоть один не готов морально :D опять набираем эту команду и так, пока они не сдадутся все. :D

13. Теперь следовательно заставляем их выполнять то что мы им говорим
rendom /execute
Следовательно, все контроллеры получают команду *выполнить* и применяют инструкции. После чего они все, применив инструкции, сами перезагружаются.
В файле dclist.xml для всех контроллеров домена состояние должно быть либо *Done* либо *Error*. Если последнее - ну, пинаем его еще разок.

14.Ребутаем управляющую станцию два раза. Когда я второй раз переименовывала домен, у меня управляющая станция уже после первой загрузки опознала новый домен и я вошла уже в домен с новым именем. Первый раз - у меня отобразилось старое имя, я попыталась войти под своим логином и паролем, не пустил. Но когда я решила войти локально на комп, в окошке я уже увидела имя компьютера и имя нового, а не старого домена. Не подцепился сразу. Не бойтесь, подцепится, никуда не денется. После второй перезагрузки, нормальной, а не из розетки выдернуть :D, управляющая станция уже точно получит всю инфу о новом имени.

15. Переползаем в нашу любимую директорию и:
rendom /end
В процессе этой команды, мы коннектимся к domain naming masterу, и там убираются некоторые штуки, собственно говоря с помощью которых master и обрабатывал наши инструкции.

16. Разбираемся с DFS, если собстна, распределенная файловая система у вас конечно поднята.
Ищем, где у нас там dfsutil.exe и переползаем туда. Дальше:

dfsutil /RenameFtRoot /Root:DfsRootPath /OldDpmain:OldName /NewDomain:NewName /Verbose

Здесь DfsRootPath к примеру, если опять же брать майкрософтовский пример \\[Для просмотра ссылки зарегистрируйтесь]\public. Ну и старое и новое имя домена OldName и NewName.

17. Теперь с групповыми политиками. Чтобы в новом лесу все нормально функционировало, надо объекты и связи групповой политики тоже исправить.Переползаем в C:\RenameDomain и там набираем:

gpfixup /olddns:OldDomainDnsName /newdns:NewDomainDnsName /oldnb:OldDomainNetBIOSName /newnb:NewdDomainNetBIOSName /dc:DcDnsName 2>&1 >gpfixup.log

Здесь
OldDomainDnsName - старое DNS имя домена
NewDomainDnsName - новое DNS имя домена
OldDomainNetBIOSName - старое NetBIOS имя домена
NewdDomainNetBIOSName - новое NetBIOS имя домена
DcDnsName - имя контроллера домена

Чтобы изменения схватились другими контроллерами надо:

repadmin /syncall /d /e /P /q DcDnsName NewDomainDN

DcDnsName - DNS имя контроллера домена.
NewDomainDN - новое DNS именя переименовываемого домена.

И так для каждого переименовываемого домена.Опять же Майкрософтовский пример

gpfixup /olddns:cohovineyard.com /newdns:cohowinery.com /oldnb:cohovineyard /newnb:cohowinery /dc:dc1.cohovineyard.com 2>&1 >gpfixup1.log

repadmin /syncall /d /e /P /q [Для просмотра ссылки зарегистрируйтесь] dc=cohowinery,dc=com

gpfixup /olddns:sales.cohovineyard.com /newdns:sales.cohowinery.com /dc:dc3.sales.cohovineyard.com 2>&1 >gpfixup2.log

repadmin /syncall /d /e /P /q [Для просмотра ссылки зарегистрируйтесь]
dc=sales,dc=cohowinery,dc=com

18. Всем машинам в домене надо перезагрузится дважды. Не выдергиванием из розетки, а нормально :)

19. Следующее rendom /clean. Это все чистит, поэтому прежде чем вы это наберете, надо всех обязательно перезагрузить иначе, что не получит инфу о новом имени домене, после этой команды уже не получит. Я не ребутнула одну рабочую станцию, вернее для эксперимента, ребутнула потом.Она новое имя - то увидела, но ругалась что домен недоступен, так что пришлось ее перевводить.
Вот, собственно говоря и все. Было бы. Если б не один нюанс. Конроллер домена не переименовывается. То есть, фактически, будет написано что он в домене newdomain.local, а имя у него будет - server.olddomain.local. Это нехорошо. Поэтому делаем так:
netdom computername server.olddomain.local /add:server.newdomain.local
netdom computername server.olddomain.local /makeprimary:server.newdomain.local
После этого перегружаем контроллер. Remove старое имя делать не надо. Пусть останется. Так кстати и просто контроллер домена переименовывается. Если домен не переименовываешь.
Все, в общем-то. Можно со спокойной душой идти пить свое честно заработанное пивко  :D
А.. еще перед пивком, чтоб совсем с чистой душой его пить,
dcdiag
Любуетесь словами passed на все тесты и вот теперь все. А вот если не passed, тогда уже только смотреть, что и где не так. :)

Думать надо о том, о чем надо думать, а о том, о чем не надо думать - думать не надо (с) (В.П Макаров)

Duke

Получаем информацию об учетных записях юзеров на компе в сети

On error Resume Next
Const ForReading = 1, ForWriting = 2, ForAppending = 8
'******************************************
strComputer = "193.125.10.5"
strUser = "Andy_user"
strPassword = "PASSWORD"
strDomain = ""
'******************************************
Err.Clear
'--- Подключаемся ---
Set objSWbemLocator = CreateObject ("WbemScripting.SWbemLocator")
If (Err.Number <> 0) Then
  WScript.Echo "Error (objSWbemLocator)  : " & Err.Number & "   " & Err.Description
  WScript.Quit
End If
Err.Clear
Set objSWbemServices = objSWbemLocator.ConnectServer ( _
  strComputer, _
  "root\cimv2", _
  strUser, _
  strPassword, _
  "MS_409", _
  "ntlmdomain:" & strDomain)
If (Err.Number <> 0) Then
  WScript.Echo "Error (objSWbemServices)  : " & Err.Number & "   " & Err.Description
  WScript.Quit
End If
Err.Clear
Set file_object = CreateObject("Scripting.FileSystemObject")
Set list = file_object.OpenTextFile("./Rezult.log",ForWriting,True)
Set colAcc = objSWbemServices.ExecQuery ("Select * from Win32_UserAccount")
WScript.Echo "Обнаружено " & colAcc.Count & " учетных записей."
For Each ttt in colAcc
   list.Write  ttt.Caption & " "  & vbCrLf
   list.Write  "   " & "Caption : " & ttt.Caption  & vbCrLf
   list.Write  "   " & "Name : " & ttt.Name  & vbCrLf
   list.Write  "   " & "Description : " & ttt.Description  & vbCrLf
   list.Write  "   " & "Domain : " & ttt.Domain  & vbCrLf
   list.Write  "   " & "SID : " & ttt.SID  & vbCrLf
   list.Write  "   " & "SIDType : " & ttt.SIDType  & vbCrLf
   list.Write  "   " & "Disabled : " & ttt.Disabled  & vbCrLf
   list.Write  "   " & "Lockout : " & ttt.Lockout  & vbCrLf
   list.Write  "   " & "PasswordChangeable : " & ttt.PasswordChangeable  & vbCrLf
   list.Write  "   " & "PasswordExpires : " & ttt.PasswordExpires  & vbCrLf
   list.Write  "   " & "PasswordRequired : " & ttt.PasswordRequired  & vbCrLf
   list.Write  " -------------------------------  " &  vbCrLf
Next
list.Close

Dark_Elf

Duke
а это что такое? я не понял... похоже на VB&C++ :)

Duke

Dark_Elf
именно ;)

brainman

Feles
БОЛЬШОЕ ЧЕЛОВЕЧЕСКОЕ СПАСИБО за пост по переименованию домена. Очень помогло.



По всем вопросам пишите по адресу gratispp@mail.ru