Как изменить пароль в RDP сессии Windows?

Как изменить пароль в RDP сессии Windows?

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

Основная проблема, на которую натыкаются пользователи — в окне терминального (RDP) подключения к удаленному серверу нельзя вызвать привычную форму смены пароля нажатием сочетания клавиш Ctlr + Alt + Delete. Эта комбинация клавиш не передается в сессию RDP, а выполняется в вашей локальной операционной системе.

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

Кнопка windows security в Windows Server 2008

Но в более новых версиях, в том числе в 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).

  1. Запустите On-Screen Keyboard в целевом RDP сеансе (проще всего набрать
    osk.exe
    в меню Пуск); запустить экранную клавиатуру On-Screen Keyboard (osk.exe ) в Windows 10/Windows Server 2019
  2. Перед вами появится экранная клавиатура;
  3. На своей физической (локальной) клавиатуре зажмите клавиши
    CTRL+ALT
    (это должно отобразиться на экране), и затем на экранной клавиатуре нажмите мышкой по кнопке
    Del
    ; экранная клавиатура - послать ctrl+alt+del в rdp сессию
  4. В результате в удаленную RDP сессию будет отправлено сочетание клавиш Ctrl+Alt+Del, и откроется стандартное окно безопасности Windows из которого можно сменить пароль.
Не забывайте, что при смене пароля пользователя он должен соответствовать требованиям локальной или доменной политики паролей.

Если новый пароль не соответствует требованиям, появится сообщение:

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

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

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

Узнать, когда истекает пароль пользователя можно с помощью PowerShell:

Get-ADUser -Identity kbuldogov -Properties msDS-UserPasswordExpiryTimeComputed | select-object @{Name="ExpirationDate";Expression= {[datetime]::FromFileTime($_."msDS-UserPasswordExpiryTimeComputed") }}

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

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

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

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

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

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

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

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

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

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

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

C:Windowsexplorer.exe shell:::{2559a1f2-21d7-11d4-bdaf-00c04f60b9f0}

explorer.exe shell:::{2559a1f2-21d7-11d4-bdaf-00c04f60b9f0} ярлык смены пароля

Смена пароля через 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 появится ошибка:

Remote Desktop Connection
You must change your password before logging on the first time. Please update your password or contact your system administrator or technical support.
Подключение к удаленному рабочему столу
Перед первым входом в систему необходимо сменить пароль. Обновите пароль либо обратитесь к вашему системному администратору или в службу технической поддержки.

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

Как результат — пользователь не сможет подключиться к RDP серверу и сменить пароль.

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

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

Windows Server 2016
Как изменить пароль в RDP сессии Windows?