Сброс SID Windows 10

Обновлено: 21.11.2024

Мне нужно было настроить 2 виртуальные машины, и я по наивности просто настроил одну с нуля, убедился, что она работает правильно, а затем скопировал ее на другой хост. Теперь получаю сообщение «доверительные отношения между этой рабочей станцией и основным доменом не удались», что, по-видимому, связано с одинаковым SID на обеих машинах. Я осмотрелся и увидел много противоречивой информации о sysprep и о том, как решить эту проблему.

Могу ли я просто обновить SID машины с проблемами домена, и тогда все будет хорошо? Если да, то как я могу это сделать? Спасибо

Я хочу думать, что удаление проблемного сервера из домена и последующее присоединение к нему создаст новый SID. Если это так, вы можете сделать это, и тогда у сервера будет новый SID.

Являются ли эти два сервера единственными в домене? Или они являются частью более крупного домена? Если первое, вы клонировали их до или после продвижения в DC?

5 ответов 5

Единственный поддерживаемый корпорацией Майкрософт метод изменения SID компьютера — запустить sysprep с параметром /generalize

изменить: Итак... уточняю. Это восходит к идее, что SID компьютера действительно не имеет значения (за исключением контроллеров домена), потому что на самом деле имеет значение SID учетной записи компьютера в домене, а не сам SID компьютера/машины. Удаление/удаление/повторное присоединение к компьютеру создаст уникальный SID учетной записи компьютера в домене и действительно решит его проблему. Но в техническом смысле это не создаст новый SID для самого компьютера.

Марк Руссинович обсудил «миф» об уникальной машине SID, и есть продолжение статьи другого автора, в которой подробно рассказывается. Наконец, есть этот пост MSDN, который, как мне кажется, довольно четко иллюстрирует SID учетной записи компьютера и компьютера домена.

Лично я столкнулся с проблемой дублирования SID, когда клонированная система использовалась для создания контроллера домена для нового домена в начале проекта миграции домена, а серверы в исходном домене не могли аутентифицировать пользователей. в новом целевом домене или присоединиться к целевому домену из-за дублирования SID. Итак, в 99% случаев это не имеет значения... но когда это имеет значение, это отстой. В результате я по-прежнему рекомендую пользователям создавать новые идентификаторы безопасности компьютеров, когда они могут это сделать.

Идентификатор безопасности (SID) – это уникальное значение переменной длины, используемое для идентификации доверенного лица. Каждая учетная запись имеет уникальный SID, выданный органом власти, например контроллером домена Windows, и хранящийся в базе данных безопасности. Каждый раз, когда пользователь входит в систему, система извлекает SID для этого пользователя из базы данных и помещает его в маркер доступа для этого пользователя. Система использует SID в маркере доступа для идентификации пользователя во всех последующих взаимодействиях с системой безопасности Windows. Если SID использовался в качестве уникального идентификатора для пользователя или группы, его нельзя использовать повторно для идентификации другого пользователя или группы.

Как изменить SID?

В РАБОЧЕЙ ГРУППЕ компьютеров под управлением Windows пользователь может неожиданно получить доступ к общим файлам или файлам, хранящимся на съемном носителе. Этого можно избежать, настроив списки управления доступом к уязвимому файлу таким образом, чтобы действующие разрешения определялись SID пользователя. Если этот SID пользователя дублируется на другом компьютере, пользователь второго компьютера с таким же SID может иметь доступ к файлам, защищенным пользователем первого компьютера. Это часто может происходить, когда SID машины дублируются клоном диска, что характерно для пиратских копий. Идентификаторы безопасности пользователей создаются на основе идентификатора безопасности компьютера и последовательного относительного идентификатора.

Для предотвращения дублирования SID поддерживаются только операционные системы Windows, использующие SysPrep, встроенный инструмент Windows, который создает новые SID. Ниже приведены краткие инструкции по безопасному изменению SID.

Проверьте текущий SID, выполнив следующую команду в Powershell. Чтобы сравнить изменение.

>кто/все

Откройте проводник Windows > перейдите в папку C:\Windows\System32\Sysprep, запустите sysprep.exe

Установите флажок "Обобщить", затем нажмите "ОК", чтобы внести изменения.

Sysprep работает. Для сброса настроек потребуется перезагрузка компьютера.

Перезагрузите компьютер, повторите настройки, как рекомендует Windows.

После этого попробуйте запустить команду whoami /all для перепроверки изменений. SID будет изменен на другой.

Наилучшие варианты использования:
SIDCHG
SIDCHG /COMPNAME:compname
SIDCHG /COMPNAME:compname /F /R /OD

Установите имя компьютера после адреса mac:
SIDCHG /COMPNAME=* /CNMF=map.txt, где в map.txt есть строки macaddress=compname

Пока изменение SID выполняется в фоновом режиме, на экране входа в систему появляется следующее сообщение, показывающее фактическое состояние процесса изменения SID:

Очень важно не входить в систему и не выключать компьютер, пока выполняется изменение SID в фоновом режиме! Это необходимо для сохранения современных пользовательских интерфейсов и приложений.

После завершения изменения SID система автоматически выключится или перезагрузится. Не делайте этого сами, не авторизируйтесь и не мешайте. Лучше вообще не трогать ПК до автоматического выключения/перезагрузки!

В качестве альтернативы можно применить исключение процесса (см. ниже). Параметр командной строки SIDCHG /FF позволяет выполнять изменение SID при включенном антивирусе в реальном времени, но это не рекомендуется. < TABLE WIDTH=590 CELLPADDING=0 CELLSPACING=10> О SIDCHGL / SIDCHGL64

< TD>SIDCHGL — альтернатива SIDCHG, если отключение антивируса нежелательно.
Для SIDCHGL(64) только рекомендуется, но не требуется, чтобы антивирусная защита в режиме реального времени Microsoft Defender Antivirus или другая программа была отключена перед изменением SID. SIDCHGL работает так же, как SIDCHG, с тем отличием, что он пропускает изменение SID в настройках браузера. Если параметры браузера, такие как домашняя страница или закладки, не синхронизированы с облаком, они будут потеряны и сброшены до значений по умолчанию после изменения SID с помощью SIDCHGL, поскольку сохраненные параметры браузера привязаны к предыдущему SID и больше не действительны для нового SID. Изменение SID в настройках браузера и, следовательно, внесение изменений в эти места приводит к тому, что антивирусное программное обеспечение останавливает процесс изменения SID, оставляя систему с незавершенным изменением SID. SIDCHGL пропускает изменение SID в настройках браузера и, следовательно, с меньшей вероятностью будет остановлен антивирусным программным обеспечением. Тем не менее, рекомендуется отключать антивирусное программное обеспечение, работающее в режиме реального времени, даже при наличии SIDCHGL. SID необходимо изменить во многих местах в системе, и остается вероятность того, что эти изменения будут восприняты антивирусным программным обеспечением как опасное действие и что оно прервет или заблокирует текущее изменение SID.

SIDCHGL и SIDCHGL64 имеют одинаковые параметры команд и работают с одним и тем же лицензионным ключом. Лицензия и ключ для SIDCHG действительны также для SIDCHGL.

Для достижения наилучших результатов рекомендуется использовать SIDCHG(64) с отключенным антивирусом в режиме реального времени во время изменения SID, а не SIDCHGL.

Как еще больше улучшить прием антивирусом
Чтобы SIDCHG работал в фоновом режиме, он обычно копирует себя в C:\Windows\Temp\SIDCHG64_.exe или C:\Windows\Temp\SIDCHGL64_.exe для SIDCHGL. Эта операция копирования распознается и потенциально не нравится антивирусному программному обеспечению. Чтобы избежать операции копирования и изменить SID в фоновом режиме из вызывающего .EXE, необходимо выполнить следующие условия: 1. SIDCHG(L)(64).EXE необходимо запустить из одного из следующих каталогов или подкаталогов. : C:\Windows, C:\Program Files, C:\Program Files (x86).
2. Атрибут безопасности, указывающий на то, что этот файл получен с другого компьютера, должен быть разблокирован в свойствах загруженного файла SIDCHG(64).EXE.
Использование исключения процессов вместо отключения антивируса в реальном времени
В качестве альтернативы отключению антивирусной программы Microsoft Defender можно исключить процесс, в котором выполняется изменение SID, из антивирусной программы. Имя процесса обычно C:\Windows\Temp\SIDCHG64_.exe или C:\Windows\Temp\SIDCHGL64_.exe для SIDCHGL, но также может быть .EXE, из которого вызывается SIDCHG (см. раздел выше).
Обратите внимание, если изменение SID занимает много времени
Прежде чем действовать, дайте ему поработать не менее 15 минут. Затем проверьте, изменилось ли сообщение о ходе выполнения с номером выполнения, показанным на изображении выше. Нажмите кнопку OK на экране сообщений о ходе выполнения, а затем нажмите на экран входа в систему, чтобы снова отобразить сообщение о ходе выполнения с новым прогрессом. Если сообщение о ходе выполнения и число выполнения ОБА остаются неизменными в течение 5 минут, можно предположить, что программа больше не работает и завершилась аварийно.Если только сообщение о ходе выполнения остается неизменным, но изменяется номер выполнения, изменение SID все еще активно обрабатывается.
Обратите внимание, если изменение SID было прервано и сообщение об изменении SID остается на экране входа
Если работа SIDCHG была прервана, используйте SIDCHG /CLEARMSG, чтобы удалить сообщение об изменении SID при входе в систему.

SIDCHG распознает прерванное изменение SID и продолжит прерванное изменение SID при повторном вызове. Существуют также параметры /REPEAT или /REVERT для повторения или отмены (отмены) изменения SID.
Повторение или отмену прерванного изменения SID лучше всего выполнять с помощью локальной учетной записи с правами администратора, которая создается заранее (до выполнения первоначального изменения SID) и которая используется специально для этой цели (учетная запись, в которой не больно, если он повредится). После прерванного изменения SID, которое должно быть продолжено или отменено, не входите в систему с активно используемой учетной записью пользователя. Не прерывайте откат и не повторяйте изменение SID.

Пожалуйста, будьте осторожны, чтобы не прерывать SIDCHG, пока он выполняет изменение SID, прежде чем ждать долгое время и убедиться, что он работает неправильно.

Обычно в большинстве современных сред самый быстрый способ создать большую виртуальную среду (тестовую или производственную) — это установить или подготовить одну виртуальную машину, а затем клонировать ее. Этот процесс не одинаков для каждой среды. Кроме того, это зависит от механизма процесса клонирования ВМ и используемого гипервизора.

Кроме того, каждый компьютер в домене Active Directory (Microsoft) имеет собственную идентификационную строку. Это отождествление не является его именем. Имя компьютера нам пригодится. Причем этот идентификатор должен быть уникальным в домене.

На уровне компьютера каждый компьютер идентифицируется уникальным значением; с именем Security ID или SID. SID рассчитывается в процессе установки каждой машины Windows. Независимо от того, является ли компьютер частью рабочей группы (или это просто отдельный компьютер), значение SID не имеет решающего значения.

Всякий раз, когда нам нужно построить домен Active Directory, нам нужны машины с разными SID. Более того, когда мы создаем нашу виртуальную лабораторию в Oracle VirtualBox (VBox) или даже в VMware, клоны всегда сохраняют старый SID исходной машины.

Добавление ВМ в домен

Для этого сценария нам нужно как минимум два сервера. Это не проблема конкретно с виртуальными машинами VirtualBox. Подготавливаем две ВМ. Первым стал сервер контроллера домена AD. Когда мы пытаемся добавить вторую машину в домен, мы можем столкнуться с ошибкой. SID домена (т. е. контроллера домена) совпадает с SID этой ВМ.

Если мы проверим это сообщение, то увидим, что решение прямо перед нами. Нам нужно запустить инструмент с именем SysPrep. Инструмент SysPrep (или подготовка системы) должен быть знаком каждому опытному администратору Windows.

Да, с помощью инструмента SysPrep мы можем удалить SID и все остальные настройки, оставив машину в неинициализированном состоянии. Машина будет инициализирована при первом запуске. Этот механизм позволяет администраторам легко клонировать как физические, так и виртуальные машины.

Инструмент SysPrep

Инструмент SysPrep находится по пути %systemroot%\System32\SysPrep. В большинстве случаев это эквивалентно пути C:\Windows\System32\sysprep (как правило, во всех случаях). У вас есть этот инструмент на рабочих станциях Windows 7 и более поздних версиях, версиях Windows Server с графическим интерфейсом, а также в базовой версии.

Найдите инструмент SysPrep и запустите его от имени администратора. Через некоторое время на экране появится окно приложения. В базовой версии просто введите команду. В остальном то же самое.

Оставьте в раскрывающемся меню «Действие очистки системы» вариант «Перейти к стандартному использованию системы (OOBE)». Мы хотим очистить все персональные настройки машины.

Однако мы хотим вернуть эту машину в неинициализированное состояние, поскольку мы только что ее установили. Поэтому установите флажок Обобщить.

Третий вариант зависит от ваших предпочтений. Если вам нужно только очистить состояние на этой машине, вам, вероятно, потребуется перезагрузить ее и продолжить работу. Однако, если вы хотите сбросить основную машину, вам нужно будет выключить ее после завершения этого процесса.

В этом сценарии нам нужно только повторно инициализировать эту виртуальную машину и нажать кнопку [ OK ]. Запустится инструмент SysPrep. Остальной процесс автоматизирован, и отменить его нельзя.

Первый этап — это этап очистки, на котором будут удалены настройки. На втором этапе будет выполнена генерализация (повторная инициализация) машины.

Через некоторое время наша машина перезагрузится.

Возрождение

Наша виртуальная машина для второго сервера перезагрузилась и запустилась. Первый экран является обычным для последовательности загрузки Windows Server 2012 R2; затем последовал приятный сюрприз.

Windows Server обнаружил, что его база данных устройств пуста, поэтому он начал поиск; теперь системе необходимо обнаружить все существующее оборудование.

Одним существенным преимуществом здесь является то, что у нас может быть больший пул драйверов устройств, особенно для интеграции с VirtualBox. SysPrep удалит персонализацию и настройки, но не файлы на диске.

Когда сервер завершит инициализацию (во время которой нужно снова указать пароль администратора), мы можем приступить к присоединению к домену.

Сервер находится в домене

Теперь наш сервер полностью повторно инициализирован, как будто он только что был установлен. Это также означает, что любое ранее установленное приложение необходимо переустановить.

Мы снова меняем имя сервера на SERVER02 и присоединяем его к домену. Затем переходим к тестовому сценарию.

Как видите, этот небольшой, но мощный инструмент может быть очень полезным. Вы должны выполнить обобщение шаблона виртуальной машины после установки. Тогда каждая новая виртуальная машина на основе этого шаблона будет отличаться от любых других. Хотя вам потребуется еще несколько минут для настройки каждой новой ВМ, позже это короткое время очень пригодится.

Получить SID компьютера в Active Directory

В средах Active Directory с помощью Powershell очень просто получить полный список SID объектов «Компьютер». Вот рабочий пример (необходимо запустить или непосредственно на контроллере домена, с правами администратора или с помощью модуля Active Directory Powershell):

Получить SID компьютера (VBScript)

Чтобы получить SID компьютера (Machine SID) с помощью кода VBScript, мы можем использовать интерфейсы WMI для запроса этой информации непосредственно из системы:

Обратите внимание, что нам нужно указать локальную учетную запись, чтобы получить также SID компьютера. Помните, что SID локального компьютера отличается в зависимости от полномочия, в котором мы получаем эту информацию, домена и/или рабочей станции. Доменные системы имеют два разных идентификатора SID компьютера.

Получить SID компьютера (VBScript)

Ниже приведен аналогичный подход в Powershell для получения SID с локального компьютера:

PSGetSID (SysInternals)

PsGetsid (инструмент командной строки, разработанный Марком Руссиновичем) позволяет преобразовывать SID в их отображаемое имя и наоборот. Он работает со встроенными учетными записями, учетными записями домена и локальными учетными записями.

Читайте также: