Рано или поздно, но администраторам доменной сети на базе продуктов Microsoft приходится сталкиваться с двумя похожими ошибками: «Не удалось установить доверительные отношения между этой рабочей станцией и основным доменом» и «База данных диспетчера учетных записей на сервере не содержит записи для регистрации компьютера через доверительные отношения с этой рабочей станцией». Помимо данных сообщений также наблюдается невозможность зайти в компьютер под доменными учетными записями.
Разберем причины появления ошибок и методы их лечения.
В доменных сетях Windows всем компьютерам и учетным записям пользователей присваиваются свои идентификаторы безопасности (SID). В сущности, можно сказать, что каждый компьютер в домене также обладает своей учетной записью типа «компьютер». По аналогии с учетной записью пользователя, такая учетная запись тоже будет иметь пароль. Данный пароль создается и предъявляется компьютером контроллеру домена автоматически. Таким образом между рабочими станциями и контроллером домена и формируются те доверительные отношения, о которых упоминается в тексте ошибок.
Каждые 30 дней или при первом включении после длительного перерыва компьютер автоматически изменяет свой пароль. В теории всё красиво, и машина вроде бы не может ошибиться и «ввести» неправильный пароль. Однако иногда такое происходит по нескольким причинам.
Самой распространенной причиной является откат операционной системы Windows на более ранее состояние. Естественно, чем раньше была создана точка восстановления, тем больше вероятность появления ошибки. В данном случае после восстановления компьютер примется предъявлять контроллеру домена устаревший пароль, а контроллер уже содержит новый.
Ошибка может возникнуть и в случае нахождения в домене двух станций с одинаковыми именами. Такая ситуация может возникнуть, например, если дать новому компьютеру имя выведенной из эксплуатации машины, а затем снова включить старый компьютер, забыв его переименовать.
С возможными причинами разобрались. Теперь о решении проблемы. Способов несколько, но все они так или иначе заключаются в переустановке учетной записи компьютера или сбросе его пароля.
Первый способ заключается в переустановке учетной записи в Active Directory.
После этого необходимо зайти на компьютер под локальным администратором и вывести рабочую станцию из домена в рабочую группу (компьютер → свойства → дополнительные параметры системы → имя компьютера → изменить).
Далее компьютер снова необходимо ввести в домен и перезагрузить. После этого уже можно заходить доменным пользователем.
Вторым способом является сброс пароля через Windows PowerShell. Оговоримся однако, что нам потребуется PowerShell версии 3.0 и выше. Также заходим на компьютер локальным администратором и вводим следующий командлет:
Reset-ComputerMachinePassword -Server DomainController -Credential Domain\Admin
В данном случае -Server это имя контроллера домена, а -Credential это учетная запись администратора домена.
Командлет не выведет никаких сообщений в случае своего успешного завершения. Данный способ привлекателен тем, что перезагрузка не требуется — достаточно сменить пользователя и войти в машину под доменной учетной записью.
Третий способ сброса пароля компьютера заключается в использовании утилиты Netdom, которая появилась в серверных ОС Microsoft начиная с Windows Server 2008. В клиентских операционных системах её можно добавить с помощью пакета RSAT (Средства удаленного администрирования сервера).
Как и в предыдущих способах, этот тоже выполняется из-под локального администратора. Введите в командной строке:
Netdom resetpwd /Server:DomainController /UserD:Admin /PasswordD:Password /SecurePasswordPrompt
Принцип схож с тем, что мы видели в примере с PowerShell. /Server это контроллер домена, /UserD — учетная запись администратора домена, /PasswordD — пароль от учетной записи администратора домена. Вы также можете использовать параметр /SecurePasswordPrompt, чтобы скрыть пароль за звездочками. Перезагрузка также не требуется.
Способ четвертый и последний в нашей статье заключается в использовании утилиты Nltest, которая по умолчанию есть на любой рабочей станции.
Запустим утилиту в командной строке и для начала проверим безопасное соединение с доменом:
Nltest /query
Затем сбросим учетную запись компьютера в домене:
Nltest /sc_reset:Domain
И, наконец, сбросим пароль компьютера:
Nltest /sc_change_pwd:Domain
К сожалению, у такой прекрасной утилиты есть свои минусы. В первую очередь, утилита не спрашивает логин/пароль администратора домена и, соответственно, исполняется из-под запустившего его пользователя, что может привести к ошибке доступа.
Есть и еще одна ошибка, связанная с доверительными отношениями внутри домена и вынесенная в начало этой статьи. Выглядит она следующим образом:
В данном случае нам опять же поможет утилита Nltest. Снова проверяем безопасное соединение с доменом:
Nltest /query
Если появится сообщение об ошибке, то для исправления ошибки достаточно установить этот патч. Если же статус подключения будет NERR_Success, то выполняем следующие действия:
netdom reset /d:Domain ComputerName
или
netdom reset /d:Domain ComputerName /server:DomainController /uo:Admin /po:Password
Во втором случае мы явно указываем контроллер домена, с которым хотим установить доверительные отношения.
Утилита порадует нас сообщением о том, что безопасный канал был сброшен и новое соединение установлено.
Итак, вот несколько способов восстановить доверительные отношения в домене. Надеюсь, что применять их вам придется как можно реже. 🙂
Большое спасибо за статью и доступный стиль изложения)
…у нас в компании службой информационной безопасности запрещено использование учетных данных с правами Администратора (локального). И вообще — запрет на любых локальных пользователей… Только доменные, только хардкор!
И когда хост теряет доверие в домене — ни зайти, ни подключиться к нему — невозможно, от слова «совсем»!.. Нет повести печальнее на свете, да ? )))
…тогда приходиться использовать недокументированные способы входа в Windows (7,8,10)