Как поменять пароль на удаленном компьютере

Обновлено: 05.07.2024


При использовании удалённого подключения к операционным системам Microsoft Windows/Windows Server по протоколу RDP в некоторых случаях может возникать потребность в смене пароля учётной записи пользователя. При этом инициатором смены пароля в разных ситуациях может выступать как сам пользователь, так и администратор Windows-системы. В некоторых сценариях может получиться так, что, казалось бы, несложная задача смены пароля может стать не такой уж и простой. Поэтому в данной записи я попробую собрать информацию о самых разнообразных способах смены пароля учётной записи пользователя в RDP-сессии.

Способ №1 - "Горячие" клавиши

В случае, если пользователю Windows необходимо самостоятельно изменить пароль своей учётной записи, то в стандартной Windows-сессии пользователем может использоваться всем известное сочетание "горячих" клавиш Ctrl-Alt-Del. Это сочетание клавиш вызывает специальный экран Безопасности Windows (Windows Security), с которого доступна функция изменения пароля :


Если же речь заходит об использовании горячих клавиш в RDP-сессиях, то стоит заметить то, что во избежание перехвата некоторых сочетаний клавиш локальной клиентской системой (системой, с которой запускается RDP-клиент), перенаправление сочетаний клавиш Windows должно быть явно разрешено в свойствах RDP-клиента. Например в клиенте mstsc.exe, встроенном в Windows, данную опцию можно включить на закладке управления локальными ресурсам.


В стандартной первичной RDP-сессии для вызова специального экрана Безопасности Windows с функцией изменения пароля используется сочетание клавиш: Ctrl-Alt-End

В случае использования вложенных RDP-сессий (второго и последующего уровней), то есть когда из одной RDP-сессии открывается другая RDP-сессия, стандартное сочетание клавиш работать не будет. В разных источниках в интернете можно найти информацию об использовании более сложных сочетаний клавиш, таких как Ctrl-Alt-Shift-End или Shift-Ctrl-Alt-End. Однако мои эксперименты с Windows 10/Windows Server 2012 R2 показали, что данные сочетания клавиш попросту не работают (возможно они работали в ранних версиях ОС Windows). В этом случае на выручку нам может прийти следующий способ.

Способ №2 - Экранная клавиатура

В составе Windows имеется приложение "Экранная клавиатура" (On-Screen Keyboard), расположенное по умолчанию в %SystemRoot%\System32\osk.exe. Используя это приложение, мы можем решить проблему использования "горячих" клавиш во вложенных RDP-сессиях.

Находясь во вложенной RDP-сессии, вызовем окно запуска приложений. Вызвать его можно разными способами, например, через контекстное меню по кнопке Windows, или через Диспетчер задач (Task Manager):


Либо можно использовать сочетание клавиш Win-R.

В окне запуска приложений выполним запуск исполняемого файла osk.exe


После того, как откроется приложение "Экранная клавиатура", нажмём на физической клавиатуре сочетание клавиш Ctrl-Alt, так, чтобы это отобразилось на экранной клавиатуре и затем, удерживая это сочетание клавиш, на экранной клавиатуре мышкой нажмём кнопку Del.


Таким образом мы отправим в удалённую RDP-сессию сочетание клавиш Ctrl-Alt-Del, в следствие чего откроется специальный экран Безопасности Windows с функцией изменений пароля пользователя.

Способ №3 – Ярлык на VBS-скрипт или Powershell

Вызов экрана Безопасности Windows можно выполнить не только интерактивными способами, но и программными, например, с помощью скриптов.

Создадим VBS-скрипт, например, с именем Windows Security.vbs . Наполним скрипт следующим содержимым:

Разместим скрипт в месте, доступном на чтение (но не для редактирования) для всех пользователей удалённого рабочего стола, например в каталоге %SystemRoot% ( C:\Windows ). А ярлык на запуск скрипта можно разместить в любом доступном пользователям месте, например, в каталоге общего профиля %SystemDrive%\Users\Public\Desktop\


При запуске данного ярлыка у пользователя будет открываться экран Безопасности Windows с возможностью изменения пароля.

Для любителей PowerShell приведённый VBS-скрипт можно заменить PS-скриптом следующего вида:

Либо запускать из ярлыка команду вида:


Однако стоит отметить тот факт, что запуск варианта с PowerShell будет происходить медленней, чем варианта с VBS-скриптом.

Описанные здесь способы с запуском ярлыка, ссылающегося на скрипт, может попросту не сработать, так как в некоторых окружениях серверов служб удалённых рабочих столов может быть заблокирована возможность выполнения скриптов. В таком случае, можно воспользоваться следующим способом.

Способ №4 – Ярлык оболочки Windows Explorer

Если говорить о создании ярлыка запуска экрана Безопасности Windows, то имеется ещё один вариант создания такого ярлыка. Создаётся ярлык со ссылкой на расширение оболочки Windows Explorer следующего вида:


Опять же, при запуске такого ярлыка у пользователя будет открываться экран Безопасности Windows с возможностью изменения пароля. Этот способ одинаково хорошо работает на Windows 10 и на Windows Server 2012 R2.

Способ №5 – Панель управления Windows (локальные учётные записи)

Данный способ относится лишь к локальным учётным записям пользователей. Изменить пароль учётной записи рядового локального пользователя можно через Панель управления Windows. В Windows 10 из раздела Панели управления "Учётные записи пользователей" доступен вызов окна "Параметры компьютера", в котором имеется функция изменения пароля текущего локального пользователя.


Такие методы вызова апплета управления учётными записями пользователей Панели управления Windows, как, например команда "control userpasswords2", в качестве отдельного способа мы выделять не будем, так как подобные действия требуют административных прав в удалённой системе. То же самое касается и таких CLI-утилит Windows, как net.exe ( %SystemRoot%\System32\net.exe ) (пример команды "net user username newpassword"), так как они тоже требуют повышения уровня прав пользователя.

Ремарка

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

Попытки смены пароля, инициированные самим пользователем, могут оказаться безуспешными в случае, если пароль был недавно изменён и на удалённую Windows систему действует политика безопасности, определяющая минимальный срок действия пароля.


Как правило, это настраивается на уровне стандартных доменных групповых политик Active Directory и/или механизмов Password Settings objects (PSOs) .

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

Далее мы поговорим о сценарии, при котором требование смены пароля включается для учётной записи пользователя форсировано администратором сервера (для локальных учётных записей), либо администратором службы каталогов Active Directory (для доменных учётных записей).


Практика показывает, что как только администратором включено требование смены пароля пользователя при следующем входе в систему, у пользователя могут возникнуть проблемы с подключением по протоколу RDP, если на стороне RDS сервера (а в некоторых случаях и на стороне RDS клиента) предварительно не предпринято никаких действий по специальной настройке обработки таких ситуаций. Далее мы рассмотрим пару примеров такой настройки.

Способ №6 - Remote Desktop Web Access

Клиентский доступ к службам Windows Server RDS может быть организован через веб-интерфейс серверной роли Remote Desktop Web Access (RDWA). В функционале этой роли имеется выключенная по умолчанию возможность смены пароля пользователя в процессе аутентификации на веб-странице RDWA.

Сразу стоит отметить то, что данный способ смены пароля будет доступен только в том случае, если на веб-узлах RDWA используется аутентификация на основе формы (Forms Authentication), а этот тип аутентификации несовместим с типом Windows Authentication, о подключении которого мы говорили ранее .


В перечне опций находим PasswordChangeEnabled и меняем установленное по умолчанию значение false на true:


Если серверов RDWA несколько и они работают в пуле за балансировщиком, например Windows NLB, то не забываем выполнить данное изменение на всех других серверах пула.

Теперь попытаемся от имени пользователя, у которого в свойствах учётной записи установлено требование смены пароля при следующем входе, аутентифицироваться на веб-странице RDWA:



На этой отдельной странице пользователь сможет ввести свои текущие учётные данные и новый пароль:


При необходимости ссылку на страницу смены пароля можно сделать доступной не только тем пользователям, у которых после аутентификации возникает требование смены пароля, но и всем остальным пользователям, чтобы они могли самостоятельно выполнять смену пароля по собственной инициативе через веб-страницу RDWA. Для этого можно будет внедрить ссылку на страницу password.aspx на странице входа login.aspx (по умолчанию страницы расположены в каталоге %windir%\Web\RDWeb\Pages\ru-RU )

Если же говорить про Windows Server 2008 R2, то в этой ОС для использования функции смены пароля в RDWA может потребоваться установка обновления KB2648402 - You cannot change an expired user account password in a remote desktop session that connects to a Windows Server 2008 R2-based RD Session Host server in a VDI environment .

Способ №7 – Специальный RDP-файл

Если пользователь выполняет подключение к удалённому рабочему столу на базе Windows Server 2012/2012 R2 через прямой запуск стандартного клиента mstsc.exe, то в ситуации с включенным признаком требования смены пароля, попытка подключения может быть завершена с ошибкой " You must change your password before logging on the first time. Please update your password or contact your system administrator or technical support ".


Если ситуация требует того, чтобы пользователь самостоятельно изменил свой пароль при первом входе в систему, то это потребует некоторого изменения уровня безопасности настроек протокола RDP на стороне RDS сервера и подготовки специального RDP-файла на стороне клиента.

Сначала на клиентской стороне откроем mstsc.exe, настроим все нужные параметры подключения к серверу RDS и используя кнопку Сохранить как, создадим RDP-файл.


После этого откроем RDP-файл в текстовом редакторе и добавим в конец файла строку "enablecredsspsupport:i:0"


Добавление данного параметра в свойствах RDP-подключения позволит клиенту успешно установить RDP-сессию с удалённой системой и сменить пароль до получения доступа к удалённому рабочему столу. Однако этот параметр понизит уровень безопасности RDP-подключения, так как клиент не сможет использовать проверку подлинности на уровне сети - Network Level Authentication (NLA). И если на стороне RDS сервера включена обязательная проверка NLA, то пользователь всё равно не сможет подключиться и получит соответствующую ошибку " The remote computer requires Network Level Authentication, which your computer does not support. ".


Разрешить эту ситуацию можно только понизив уровень безопасности RDP на стороне RDS сервера, отключив обязательное требование проверки подлинности на уровне сети (NLA). Изменить эту настройку можно в свойствах системы на закладке Удалённый доступ:


В английской версии Windows название опции звучит как "Allow connections only from computers running Remote Desktop with Network Level Authentication (recommended)"

Если NLA нужно отключить на уровне коллекции серверов Windows Server 2012 R2, то сделать этом можно в свойствах коллекции сеансов, например через оснастку Server Manager:



И после этого пользователю будет показан экран, на котором он сможет задать новый пароль:


После успешной смены пароля последующие подключения по протоколу RDP будут проходить в штатном режиме без лишних запросов.

Заключение

Приведённый здесь перечень способов смены пароля при использовании протокола RDP не претендует на какую-то полноту и исключительность, а лишь отражает ту информацию, которую мне удалось найти в разных источниках по этому поводу. На мой взгляд, ни один из перечисленных способов нельзя считать наиболее удобным или универсальным, так как каждый из способов может применяться в определённых ограниченных сценариях и имеет, как преимущества, так и недостатки по сравнению с другими способами.

date

05.05.2021

directory

Windows 10, Windows Server 2016, Windows Server 2019

comments

комментариев 10

В этой статье мы рассмотрим основные способы сменить пароль пользователя на удаленном компьютере в RDP сессии. В качестве удаленного хоста может выступать как Windows Server с настроенной на нем ролью Remote Desktop Services, так и рабочая станция с десктопной Windows 10, в настройках которой разрешено одно или множественные RDP подключения.

В Windows Server 2003/2008 можно было сменить пароль пользователя по RDP, нажав кнопку Пуск и выбрав пункт Windows Security -> Change Password.

Но в более новых версиях, в том числе в Windows Server 2016/2019 и Windows 10 пункт меню Windows Security (Безопасность Windows) отсутствует, поэтому этот способ смены пароля не применим.

Смена пароля в RDP с помощью комбинации CTRL + ALT + END

В современных версиях Windows для вызова окна Windows Security в RDP сессии нужно использовать сочетание клавиш Ctlr + Alt + End. Эта комбинация является аналогом комбинации Ctlr + ALt + Delete, но работает только в окне RDP подключения. В открывшемся меню выберите Change a password.

изменить пароль в RDP с помощью комбинации Ctlr + ALt + End

И в стандартном диалоговом окне можете изменить свой пароль (укажите старый пароль и два раза новый).

сменить пароль удаленно в rdp сессии

Смена пароля с помощью экранной клавиатуры

Если вы подключены к удаленному рабочему столу хоста Windows через несколько промежуточных RDP сеансов, вы не сможете использовать комбинацию CTRL+ALT+END для смены пароля пользователя. Нажатие этих клавиш будет перехвачено первым RDP окном. В таких случаях вы можете воспользоваться для смены пароля пользователя стандартной экранной клавиатурой Windows (On-Screen Keyboard).

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

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

Также обратите внимание, что в доменной политике (или в Password Settings objects) обычно настраивается параметр Minimum password age, который запрещает пользователю самостоятельно менять пароль чаще указано в этом параметре GPO.

Вызов окна смены пароля в RDP сессии через VBS/PowerShell

Вы можете вызвать диалоговое окно Windows Security в RDP сессии программно с помощью встроенных инструментов Windows: VBScript, PowerShell или shell ярлыка.

Например, создайте на рабочем столе файл WindowsSecurity.vbs со следующим кодом VBScript:

set objShell = CreateObject("shell.application")
objshell.WindowsSecurity

При двойном щелчке по этому vbs файлу перед вами откроется стандартная форма, через которую можно изменить пароль.

На RDS сервере вы можете поместить этот vbs файл на общий рабочий стол ( %SystemDrive%\Users\Public\Desktop\ ) или скопировать его на рабочие столы пользователей через GPO.

скрипт vbs на рабочем столе rds сервера для самостоятельной смены пароля пользователея

Аналогичное окно смены пароля можно вызвать и из PowerShell. Воспользуйтесь командой:

New-Object -COM Shell.Application).WindowsSecurity()

вызвать окно смены пароля в RDP сеансе с помощью PowerShell

Есть еще вариант создания ярлыка Windows Explorer со следующей ссылкой:

explorer.exe shell. <2559a1f2-21d7-11d4-bdaf-00c04f60b9f0></p>
<p> ярлык смены пароля

Смена пароля через Remote Desktop Web Access

Если вы используете доступ к RDS серверам через роль Remote Desktop Web Access (RDWA), вы можете включить возможность смены истекшего пароля на веб-странице входа RDWA (подробнее это описано здесь).

Форма смены пароля пользователя на rd web access windows 2012

CredSSP NLA и смена пароля через RDP

Есть одна важная особенность, касающаяся смены истекшего пароля пользователя по RDP, связанна с опцией Network Level Authentication (NLA) и протоколом Credential Security Support Provider (CredSSP). По умолчанию CredSSP с NLA для RDP включен во всех версиях Windows, начиная с Windows Server 2012/Windows 8. NLA обеспечивают защиту RDP сервера за счет выполнения аутентификации пользователя до установки RDP сеанса с сервером.

Если у пользователя истек пароль, или администратор AD через атрибуты пользователя включил ему опцию userAccountControl “Требовать смену пароля при первом входе в систему/ User must change password at next logon ” (чаще всего это опцию включают для новых учетных записей AD), то при входе в систему по RDP появится ошибка:

Подключение к удаленному рабочему столу Перед первым входом в систему необходимо сменить пароль

В этом случае, чтобы пользователь мог самостоятельно сменить пароль, можно:

RDP отключение проверки поддлинности на уровне сети (NLA)

  • Настроить RDWA со страницей смены пароля как описано выше; на RDP сервере (не рекомендуется. т.к. существенно снижает уровень безопасности для RDP подключений) и использовать для подключения .rdp файл со строкой enablecredsspsupport:i:0;
  • Создать отдельный сервер для смены паролей пользователей. На этот сервер не нужно устанавливать роль Remote Desktop Session Host, не нужно добавлять пользователей в локальную группу доступа Remote Desktop Users, но нужно отключить NLA. В этом случае пользователи смогу сменить пароль, но не смогут войти на сервер по RDP
  • Пользователь может изменить свой пароль удаленно через PowerShell (если у него есть сетевой доступ к контроллеру домена).

Одной из хороших привычек любого пользователя ПК, а тем более системного администратора, является периодическая смена паролей учетных записей. Главное потом его не забыть.

В операционных системах семейства Microsoft Windows Server, для смены пароля, привычно использовать сочетание клавиш Ctrl + Alt + Del. проблема в том, что “три кнопки” нельзя использовать через “Подключение к удаленному рабочему столу”. Рассмотрим как все таки изменить пароль.

Смена пароля в ОС Windows Server 2008

В ОС Windows Server 2008 это можно сделать из меню Пуск, кликнув по “Безопасность Windows”.

Смена пароля через меню

Скриншот №1. Смена пароля через меню "Пуск"

На обновлённом экране выбираем экране выбираем “Сменить пароль”.

Сменить пароль

Скриншот №2. Сменить пароль

Вводим старый пароль и новый и его подтверждение.

Выбор нового пароля

Скриншот №3. Выбор нового пароля

Смена пароля в ОС Windows Server 2012 и Windows Server 2012 R2

В ОС Windows Server 2012 и Windows Server 2012 R2 несколько усложнилась задача.

Открываем блокнот и пишем две строки:

set objShell = CreateObject("shell.application")
objshell.WindowsSecurity

Блокнот

Скриншот №4. Блокнот

Сохраняем файл с расширением *.vbs (пишем вручную.). Для этого выбираем Файл -> Сохранить как …

В новом окне выбираем директорию для сохранения файла, например, Рабочий стол. В Тип файла выбираем Все файлы, а в Имя файла указываем произвольное имя, например, 1.vbs.

Выбор директории

Скриншот №5. Выбор директории

После сохранения файла, он уже готов к исполнению. Двойной клик левой кнопкой мыши вызовет экран, в которым следует выбрать “Сменить пароль”.

Смена пароля

Скриншот №6. Смена пароля

Далее все привычно.

Подтверждение действия

Скриншот №7. Подтверждение действия

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

Смена пароля в ОС Windows Server 2016

ОС Windows Server 2016 радует своим расположением к пользователю, но чтобы изменить удаленно пароль, все равно нужно поискать этот пункт.

Открываем меню Пуск и кликаем по значку пользователя, в открывшемся меню выбираем “Изменить параметры учетной записи”.

Меню пуск в Windows 16

Скриншот №9. Меню пуск в Windows 16

В открывшемся окне “Параметры” выбираем “Параметры входа”, а в секции Пароль кликаем по кнопке Изменить.

Пункт

Скриншот №10. Пункт "Параметры входа"

В новом окне, указываем текущий пароль и кликаем по кнопке Далее.

Ведение текущего пароля

Скриншот №11. Ведение текущего пароля

Окно обновится и запросит новый пароль, его подтверждение, а также подсказку к паролю. Кликаем по кнопке далее. В итоге, кликаем по кнопке Готово. Следующий вход в систему будет происходить под новым паролем.

Введение нового пароля

Скриншот №12. Введение нового пароля

Альтернативный способ

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

В меню Пуск, выбираем Администрирование (“Средства администрирования” в Windows Server 2016).

Альтернативный метод через пункт

Скриншот №13. Альтернативный метод через пункт "Администрирование"

В новом окне двойным кликом мыши открываем “Управление компьютером”.

Управление компьютером

Скриншот №14. Управление компьютером

В левой части открывшегося окна раскрываем ветку “Локальные пользователи и группы” и открываем папку Пользователи. В основной части окна, кликаем правой кнопкой мыши по пользователю и в контекстном меню выбираем “Задать пароль. ”.

Задать пароль для пользователя

Скриншот №15. Задать пароль для пользователя

Система выдаст предупреждение. Внимательно прочитав которое и осознав все риски кликаем по кнопке “Продолжить”. В противном случае - “Отмена”.

Предупреждение системы

Скриншот №16. Предупреждение системы

В новом окне указываем новый пароль и его подтверждение. По окончании кликаем по кнопке OK.

В данной инструкции описываются способы смены пароля на удаленном рабочем столе Windows Server.

Смена пароля на удаленном рабочем столе Windows Server 2008

При нажатии кнопки Пуск, открывается меню, в котором находится выделенная кнопка «Безопасность Windows»:

Меню пуск - Безопасность Windows

Рисунок 1 - Меню пуск - Безопасность Windows

При нажатии данной кнопки - попадаете в системное меню удаленного рабочего стола.

Системное меню удаленного рабочего стола Windows Server 2008

Рисунок 2 - Системное меню удаленного рабочего стола Windows Server 2008

Нажимаем Сменить пароль, после чего требуется ввести старый пароль, новый пароль и повторно новый пароль для подтверждения, далее нажимаем на стрелку для подтверждения смены пароля. При следующем подключении потребуется уже ввести новый пароль.

Меню смены пароля Windows Server 2008

Рисунок 3 - Меню смены пароля Windows Server 2008

Смена пароля на удаленном рабочем столе Windows Server 2012/2016/2019

В Windows Server 2012\2016\2019 убрали возможность войти в системное меню через меню Пуск, остался способ через комбинацию клавиш. В сеансе удаленного рабочего стола требуется использовать комбинацию клавиш Ctrl + Alt + END, так мы попадаем в системное меню удаленного рабочего стола сервера.

Системное меню Windows Server 2016

Рисунок 4 - Системное меню Windows Server 2016

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

Меню смены пароля Windows Server 2016

Рисунок 5 - Меню смены пароля Windows Server 2016

Информационное окно о смене пароля

Рисунок 6 - Информационное окно о смене пароля

На этом процедура по смене пароля закончена, не забудьте свой новый пароль для повторной авторизации на сервере.

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