Содержание
AD
Понижение роли сервера Windows 2012 - http://emmell.ru/server/udalenie-vtorogo-kontrollera-domena-ili-ponizhenie-roli-ad-ds-windows-server-2012
Установка
Установить компоненты:
Install-WindowsFeature -Name AD-Domain-Services -IncludeManagementTools Import-Module ServerManager Import-Module ADDSDeployment
Создать новый домен:
Install-ADDSForest -DomainName domain.site.com -DomainNetbiosName "DOMAIN" -InstallDns:$true -DatabasePath "C:\ActiveDirectory\NTDS" -SYSVOLPath "C:\ActiveDirectory\SYSvol" -LogPath "C:\ActiveDirectory\Logs" -SafeModeAdministratorPassword (Convertto-Securestring "<PASSWORD>" -asplaintext -Force) -NoRebootOnCompletion:$false -Force:$true
Утилиты
Active Directory Replication Status Tool - http://habrahabr.ru/company/netwrix/blog/149121/
Статус репликации всех контроллеров доменов во всех доменах в лесе:
repadmin /replsum
DNS
Корректность настройки dns проверяется:
dcdiag /test:dns
Пример настройки bind для 2-х AD серверов:
A 192.168.10.250 $ORIGIN domain.com. active A 192.168.10.250 twix A 192.168.10.121 gc._msdcs A 192.168.10.250 gc._msdcs A 192.168.10.121 $ORIGIN _msdcs.domain.com. 25adf637-fb10-4fb2-b366-918d1217be13 CNAME active.domain.com. 5109b0b8-b96d-44e4-96a4-008c24371ef3 CNAME twix.domain.com. _ldap._tcp.1de3c735-0611-4a77-808a-04709817cb0d.domains SRV 0 0 389 domain.com. SRV 0 100 389 active.domain.com. SRV 0 200 389 twix.domain.com. _kerberos._tcp.Default-First-Site-Name._sites.dc SRV 0 0 88 domain.com. SRV 0 100 88 active.domain.com. SRV 0 200 88 twix.domain.com. _ldap._tcp.Default-First-Site-Name._sites.dc SRV 0 0 389 domain.com. SRV 0 100 389 active.domain.com. SRV 0 200 389 twix.domain.com. _ldap._tcp.Default-First-Site-Name._sites.gc SRV 0 0 389 domain.com. SRV 0 100 389 active.domain.com. SRV 0 200 389 twix.domain.com. _kerberos._tcp.dc SRV 0 0 88 domain.com. SRV 0 100 88 active.domain.com. SRV 0 200 88 twix.domain.com. _ldap._tcp.dc SRV 0 0 389 domain.com. SRV 0 100 389 active.domain.com. SRV 0 200 389 twix.domain.com. _ldap._tcp.gc SRV 0 0 389 domain.com. SRV 0 100 389 active.domain.com. SRV 0 200 389 twix.domain.com. _ldap._tcp.pdc SRV 0 0 389 domain.com. SRV 0 100 389 active.domain.com. $ORIGIN _tcp.domain.com. _ldap SRV 0 0 389 domain.com. SRV 0 100 389 active.domain.com. SRV 0 200 389 twix.domain.com. _kerberos SRV 0 0 88 domain.com. SRV 0 100 88 active.domain.com. SRV 0 200 88 twix.domain.com. _kpasswd SRV 0 0 464 domain.com. SRV 0 100 464 active.domain.com. SRV 0 200 464 twix.domain.com. $ORIGIN _udp.domain.com. _kerberos SRV 0 0 88 domain.com. SRV 0 100 88 active.domain.com. SRV 0 200 88 twix.domain.com. $ORIGIN _sites.domain.com. _ldap._tcp.Default-First-Site-Name SRV 0 0 389 domain.com. SRV 0 100 389 active.domain.com. SRV 0 200 389 twix.domain.com. _kerberos._tcp.Default-First-Site-Name SRV 0 0 88 domain.com. SRV 0 100 88 active.domain.com. SRV 0 200 88 twix.domain.com. _gc._tcp.Default-First-Site-Name SRV 0 0 3268 domain.com. SRV 0 100 3268 active.domain.com. SRV 0 200 3268 twix.domain.com.
LDAP
Атрибуты
userAccountControl
| Флаг свойства | Шестнадцатеричное значение | Десятичное значение |
|---|---|---|
| SCRIPT | 0x0001 | 1 |
| ACCOUNTDISABLE | 0x0002 | 2 |
| HOMEDIR_REQUIRED | 0x0008 | 8 |
| LOCKOUT | 0x0010 | 16 |
| PASSWD_NOTREQD | 0x0020 | 32 |
| PASSWD_CANT_CHANGE Примечание Данное разрешение невозможно назначить при помощи прямой правки атрибута UserAccountControl. Для получения сведений о назначении разрешения программным путем см. раздел «Описание флагов свойств». | 0x0040 | 64 |
| ENCRYPTED_TEXT_PWD_ALLOWED | 0x0080 | 128 |
| TEMP_DUPLICATE_ACCOUNT | 0x0100 | 256 |
| NORMAL_ACCOUNT | 0x0200 | 512 |
| INTERDOMAIN_TRUST_ACCOUNT | 0x0800 | 2048 |
| WORKSTATION_TRUST_ACCOUNT | 0x1000 | 4096 |
| SERVER_TRUST_ACCOUNT | 0x2000 | 8192 |
| DONT_EXPIRE_PASSWORD | 0x10000 | 65536 |
| MNS_LOGON_ACCOUNT | 0x20000 | 131072 |
| SMARTCARD_REQUIRED | 0x40000 | 262144 |
| TRUSTED_FOR_DELEGATION | 0x80000 | 524288 |
| NOT_DELEGATED | 0x100000 | 1048576 |
| USE_DES_KEY_ONLY | 0x200000 | 2097152 |
| DONT_REQ_PREAUTH | 0x400000 | 4194304 |
| PASSWORD_EXPIRED | 0x800000 | 8388608 |
| TRUSTED_TO_AUTH_FOR_DELEGATION | 0x1000000 | 16777216 |
Примечание В домене под управлением Windows Server 2003 флаги LOCK_OUT и PASSWORD_EXPIRED заменены новым атрибутом ms-DS-User-Account-Control-Computed. Для получения дополнительных сведений о данном атрибуте посетите веб-узел:
Описание флагов свойств
- SCRIPT - Запуск сценария входа.
- ACCOUNTDISABLE - Отключение учетной записи пользователя.
- HOMEDIR_REQUIRED - Требуется домашняя папка.
- PASSWD_NOTREQD - Пароль не требуется.
- PASSWD_CANT_CHANGE - Пользователь не может изменить пароль. Это разрешение на объекте пользователя. Для получения сведений о назначении данного разрешения программным путем посетите веб-узел: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/adsi/adsi/modifying_user_cannot_change_password_ldap_provider.asp
- ENCRYPTED_TEXT_PASSWORD_ALLOWED - Пользователь может отправить зашифрованный пароль.
- TEMP_DUPLICATE_ACCOUNT - Учетная запись для пользователей, чьи основные учетные записи хранятся в другом домене. Данная учетная запись обеспечивает доступ пользователя к данному домену, но не к доменам, которые доверяют ему. Данную учетную запись иногда называют локальной учетной записью пользователя.
- NORMAL_ACCOUNT - Тип учетной записи, используемой по умолчанию и представляющей обычного пользователя.
- INTERDOMAIN_TRUST_ACCOUNT - Разрешение доверять учетную запись домену системы, доверяющему другим доменам.
- WORKSTATION_TRUST_ACCOUNT - Учетная запись для компьютера, использующего Microsoft Windows NT 4.0 Workstation, Microsoft Windows NT 4.0 Server, Microsoft Windows 2000 Professional или Windows 2000 Server и являющегося членом данного домена.
- SERVER_TRUST_ACCOUNT - Учетная запись для контроллера домена, являющегося членом данного домена.
- DONT_EXPIRE_PASSWD - Представляется пароль, срок действия которого не истекает для данной учетной записи.
- MNS_LOGON_ACCOUNT - Учетная запись входа MNS.
- SMARTCARD_REQUIRED - Пользователь может осуществить вход только с использованием смарт-карты.
- TRUSTED_FOR_DELEGATION - Учетной записи службы (пользователя или компьютера), под которой выполняется служба, доверяется делегирование Kerberos. Любая подобная служба может олицетворять клиента, запрашивающего службу. Для разрешения делегирования Kerberos необходимо установить данный флаг для свойства Контроль учетных записей учетной записи службы.
- NOT_DELEGATED - Контекст безопасности пользователя не делегируется службе, даже если учетной записи службы доверено делегирование Kerberos.
- USE_DES_KEY_ONLY - (Windows 2000/Windows Server 2003) Участник может использовать только тип шифрования DES для ключей.
- DONT_REQUIRE_PREAUTH - (Windows 2000/Windows Server 2003) Данная учетная запись не требует предварительной проверки Kerberos для входа.
- PASSWORD_EXPIRED - (Windows 2000/Windows Server 2003) Срок действия пароля пользователя истек.
- TRUSTED_TO_AUTH_FOR_DELEGATION - (Windows 2000/Windows Server 2003) Данной учетной записи разрешено делегирование. Данный параметр влияет на безопасность. Учетные записи с разрешенным делегированием должны использоваться крайне осмотрительно. Этот параметр разрешает службе, выполняющейся под данной учетной записью, использовать учетные данные и проходить проверку подлинности от имени этого пользователя для других удаленных серверов в сети.
Значения UserAccountControl
Здесь приводятся значения UserAccountControl по умолчанию для некоторых объектов:
Обычный пользователь : 0x200 (512)
Контроллер домена : 0x82000 (532480)
Рабочая станция/сервер: 0x1000 (4096)
Изменение DisplayName (LastName FirstName)
http://support.microsoft.com/kb/250455 - Изменеие схемы LDAP для автоматического назначения имени
http://support.microsoft.com/kb/277717 - Изменеие чуществующих записей с помощью vbs
Репликация
USN Rollback
При AD ошибках 8456 or 8457 (http://support.microsoft.com/kb/2023007) или Event ID 2095 NTDS Replication, 2103 NTDS General
Netlogon стоит на паузе.
Проверяем USN на каждом контролере, например:
на TEST-DC1:
> repadmin /showutdvec test-dc1 dc=lab,dc=local Caching GUIDs. .. Default-First-Site-Name\TEST-DC2 @ USN 13435 @ Time 2011-06-01 15:37:49 ... Default-First-Site-Name\TEST-DC1 @ USN 12146 @ Time 2011-06-01 15:52:08
на TEST-DC2:
> repadmin /showutdvec test-dc2 dc=lab,dc=local Caching GUIDs. .. Default-First-Site-Name\TEST-DC2 @ USN 13409 @ Time 2011-06-01 15:52:49 ... Default-First-Site-Name\TEST-DC1 @ USN 12146 @ Time 2011-06-01 15:04:22
В итоге, проблема заключается в том что TEST-DC1 имеет USN равный 13435, а TEST-DC2 знает о том что входящий USN был равен 13409 и как следствие выполняется блокировка обновления службы каталогов.
Метод №1
Данный метод не является лечением от USN Rollback, он скорее предотвращает его возникновение т.к. основан на ключе реестра который сообщает что служба каталогов была восстановлена из резервной копии.
При восстановлении снапшота виртуальной машины необходимо:
- Загрузить контроллер в DSRM (Directory Service Restore Mode) режиме. Если вы загрузились в обычном режиме то переходите к методу №2.
- Открыть редактор реестра, найти ветку
HKLM\System\CurrentControlSet\Services\NTDS\Parameters
если есть значение DSA Previous Restore Count то ставим его в 0.
- Добавляем Database restored from backup
HKLM\System\CurrentControlSet\Services\NTDS\Parameters Data type: REG_DWORD Value: 1
- Выполняем перезагрузку.
- Проверяем что значение DSA Previous Restore Count стало равным 1.
- В журнале Directory Service проверьте события ID 1109 или ID 1587. Эти события подтверждают что база Active Directory восстановлена нормально.
Метод №2
Придется с проблемного контроллера удалять Active Directory, затем очистить метаданные из AD и восстанавливать роль контроллера.
- На проблемном контроллере запускаем утилиту dcpromo /forceremoval (не для 2012 и выше, там через Server Manager)
- После завершения процедуры выключаем контроллер.
- Процедура чистки метаданных подробно описана в статье базы знаний микрософта
Процедура чистки метаданных:
C:\>ntdsutil ntdsutil: metadata cleanup metadata cleanup: connections server connections: connect to server test-dc1 Binding to test-dc1 ... Connected to test-dc1 using credentials of locally logged on user. server connections: quit metadata cleanup: select operation target select operation target: list domains Found 1 domain(s) 0 - DC=lab,DC=local select operation target: select domain 0 No current site Domain - DC=lab,DC=local No current server No current Naming Context select operation target: list sites Found 1 site(s) 0 - CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=lab,DC=local select operation target: select site 0 Site - CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=lab,DC=local Domain - DC=lab,DC=local No current server No current Naming Context select operation target: list servers in site Found 2 server(s) 0 - CN=TEST-DC1,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=lab,DC=local 1 - CN=TEST-DC2,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=lab,DC=local select operation target: select server 1 Site - CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=lab,DC=local Domain - DC=lab,DC=local Server - CN=TEST-DC2,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=lab,DC=local DSA object - CN=NTDS Settings,CN=TEST-DC2,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=lab,DC=local DNS host name - TEST-DC2.lab.local Computer object - CN=TEST-DC2,OU=Domain Controllers,DC=lab,DC=local No current Naming Context select operation target: quit metadata cleanup: remove selected server Transferring / Seizing FSMO roles off the selected server. Removing FRS metadata for the selected server. Searching for FRS members under "CN=TEST-DC2,OU=Domain Controllers,DC=lab,DC=local". Deleting subtree under "CN=TEST-DC2,OU=Domain Controllers,DC=lab,DC=local". The attempt to remove the FRS settings on CN=TEST-DC2,CN=Servers, CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=lab,DC=local failed because "Element not found."; metadata cleanup is continuing. "CN=TEST-DC2,CN=Servers,CN=Default-First-Site-Name,CN=Sites, CN=Configuration,DC=lab,DC=local" removed from server "test-dc1" metadata cleanup: quit ntdsutil: quit Disconnecting from test-dc1...
Удаляем домен из ДНС. На вкладке “Name Servers” оснастки DNS удаляем записи контроллера из Forest и Domain DNS зон. В завершении открываем оснастку Active Directory Sites and Services и удаляем проблемный контроллер.
http://blog.wadmin.ru/2011/07/usn-rollback/
http://support.microsoft.com/default.aspx?scid=kb;EN-US;875495
http://technet.microsoft.com/ru-ru/library/dd363545(v=ws.10).aspx
Backup / Recovery
https://technet.microsoft.com/ru-ru/magazine/2008.05.adbackup.aspx - Резервное копирование и восстановление Active Directory в Windows Server 2008
Удаление контроллера домена
- В командной строке введите ntdsutil и нажмите клавишу ВВОД.
- Введите metadata cleanup и нажмите клавишу ВВОД. Можно, кстати, сокращать команды,например, meta cl
- Введите команду connections и нажмите клавишу ВВОД. Это меню предназначено для подключения к серверу, на котором происходят изменения. Если текущий пользователь не обладает правами администратора, перед подключением следует указать другую учетную запись. Для этого введите команду set creds имя_доменаимя_пользователяПароль и нажмите клавишу ВВОД. В случае использования пустого пароля введите null.
- Введите команду connect to server имя_сервера и нажмите клавишу ВВОД. Появится сообщение о подключении к серверу. При возникновении ошибки убедитесь, что доступен контроллер домена, который используется для подключения, а текущая учетная запись обладает правами администратора на сервере. Сервер, к которому вы подключаетесь должен быть рабочим контроллером домена, а не тот который вы удаляете. Это может быть контроллер домена родительского домена, например, если вы удаляете дочерний.
Примечание. Если выполняется подключение к удаляемому серверу, то при попытке его удаления (действие 15) может появиться следующее сообщение об ошибке:
Ошибка 2094. Невозможно удалить объект DSA0x2094
- Введите команду quit и нажмите клавишу ВВОД. Появится меню Metadata Cleanup.
- Введите команду select operation target и нажмите клавишу ВВОД.
- Введите команду list domains и нажмите клавишу ВВОД. Появится список доменов леса с номерами.
- Введите команду select domain номер и нажмите клавишу ВВОД, где номер – номер домена, которому принадлежит удаляемый сервер. Выбранный домен используется для проверки того, является ли удаляемый сервер последним контроллером в этом домене.
- Введите команду list sites и нажмите клавишу ВВОД. Появится список узлов с номерами.
- Введите команду select site номер и нажмите клавишу ВВОД, где номер – номер узла, которому принадлежит удаляемый сервер. Появится подтверждение выбранного домена и узла.
- Введите команду list servers in site и нажмите клавишу ВВОД. Появится список серверов узла с номерами.
- Введите команду select server номер, где номер – номер удаляемого сервера. Появится подтверждение, которое содержит имя выбранного сервера, его DNS-имя и местонахождение учетной записи.
- Введите команду quit и нажмите клавишу ВВОД. Появится меню Metadata Cleanup.
- Введите команду remove selected server и нажмите клавишу ВВОД. Должно появиться сообщение об успешном удалении сервера. Появление следующего сообщения об ошибке свидетельствует о том, что объект NTDS Settings был удален из Active Directory ранее другим администратором или в результате репликации успешного удаления объекта после запуска программы DCPROMO.
- Введите в каждом меню команду quit и нажмите клавишу ВВОД, чтобы завершить работу с программой Ntdsutil.
Приоритет / Вес
Ветка реестра: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Netlogon\Parameters
- для приоритета, ключ: LdapSrvPriority
- для веса, ключ: LdapSrvWeight
- устанавливается значением типа REG_DWORD. Наибольший приоритетом и/или весом обладает наименьшее значение.
После установки значения веса/приоритета можно посмотреть в следующем файле: %SystemRoot%\System32\Config\netlogon.dns
Для применения значения - перезапустить службу netlogon!
Перезапустить с включённым debug логом:
nltest /dbflag:2080ffff net stop netlogon net start netlogon
Отключить debug лог:
nltest /dbflag:0 net stop netlogon net start netlogon
Проверить приоритет:
nslookup -querytype=srv _ldap._tcp.default-first-site-name._sites.dc._msdcs.domain.com
http://forum.ru-board.com/topic.cgi?forum=8&topic=17305
https://social.technet.microsoft.com/Forums/ru-RU/83564f0c-b236-41a8-b9cf-9ba576ad2018/ad-sites-vs-ldapsrvpriority-for-ldap-services?forum=winserverDS
Доверие между доменами
Порты для обмена:
TCP - 88,135,389,445,49152:65535 UDP - 53,389
DNS записи (при блокировке 53 порта UDP):
A для domain.com.
(same as parent folder) ad1.domain.com
SRV для _tcp.Default-First-Site-Name._sites.dc._msdcs.domain.com.
Service: _kerberos Protocol: _tcp Priority: 0 Weight: 100 Port Number: 88 Host offering this service: ad1.domain.com.
Service: _ldap Protocol: _tcp Priority: 0 Weight: 100 Port Number: 389 Host offering this service: ad1.domain.com.
EventID
36886 Source: Schannel
https://technet.microsoft.com/en-us/library/cc772393%28WS.10%29.aspx - Active Directory Certificate Services Step-by-Step Guide
2089 Source: NTDS Replication
4012 Source: DFSR
В сообщении об ошибке ищем строчки:
The DFS Replication service stopped replication on the folder with the following local path: D:\msi. This server has been disconnected from other partners for 75 days, which is longer than the time allowed by the MaxOfflineTimeInDays parameter (60).
где 75 сколько дней не происходит репликация директория D:\msi. Параметр MaxOfflineTimeInDays (60) - как долго можно не реплицироваться.
Изменить этот параметр:
wmic.exe /namespace:\\root\microsoftdfs path DfsrMachineConfig set MaxOfflineTimeInDays=7
Вариант 1
Не реплицируется папка SYSVOL
На PDC и остальных DC останавливаем службу dfsr:
sc stop dfsr
На PDC в дереве LDAP «CN=SYSVOL Subscription,CN=Domain System Volume,CN=DFSR-LocalSettings,CN=DC1,OU=Domain Controllers,DC=<domain>» с помощью:
ADSIEDIT.MSC
редактируем на:
msDFSR-Enabled=FALSE msDFSR-options=1
На остальных DC редактируем только:
msDFSR-Enabled=FALSE
На PDC в оснастке «AD - сайты и службы» реплицируем конфигурацию на все не авторитетные DC.
На не авторитетных DC проверяем, что прошла последняя репликация:
repadmin /showrepl
На PDC запускаем dfsr:
sc start dfsr
На PDC возвращаем параметр:
msDFSR-Enabled=TRUE
и в оснастке «AD - сайты и службы» снова реплицируем конфигурацию на все не авторитетные DC.
Убеждаемся на не авторитетных DC проверяем, что прошла последняя репликация:
repadmin /showrepl
На PDC выполняем:
DFSRDIAG POLLAD
На остальных не авторитетные DC выполняем:
sc start dfsr
возвращаем параметр:
msDFSR-Enabled=TRUE
и выполняем:
DFSRDIAG POLLAD
Вариант 2
- На проблемном сервере запускаем:
DFSMGMT.MSC
- выбираем все группы репликации где этот сервер является участником, на вкладке Membership Отключаем (Disable) его.
- Проверяем статус на всех реплицируемых серверах.
- На проблемном сервере запускаем:
DFSRDIAG.EXE POLLAD
- Ждём ошибки 4008 и 4114 в DFSR event log.
- В DFSMGMT.MSC, Включаем (Enable) реплицируемые директории.
- Запускаем:
DFSRDIAG.EXE POLLAD
