Очистка истории RDP подключений в Windows
RDP клиент в Windows (mstsc.exe) при каждом успешном соединении с удаленным компьютером сохраняет в системе его имя (или ip адрес) и имя пользователя, под которым был выполнен вход. При следующем запуске клиент RDP предлагает пользователю выбрать одно из подключений, которыми он уже пользовался ранее. Пользователь может выбрать из списка имя удаленного rdp сервера, и клиент автоматически подставляет используемое ранее для входа имя пользователя.
Это удобно с точки зрения конечного пользователя, однако несекьюрно с точки зрения безопасности, особенно когда rdp соединение инициируется с общедоступного или недоверенного компьютера.
Информация о терминальных сессиях хранится индивидуально для каждого пользователя компьютера в его профиле, т.е. пользователь (подразумевается рядовой пользователь, а не администратор) не сможет просмотреть историю подключений другого пользователя.

В этой статье мы покажем, где в Windows хранится история подключений к удаленным рабочим столам и сохраненные пароли, и каким образом можно эту историю очистить.Содержание:
- Удаление журнала RDP подключений из реестра системы
- Очистка истории (логов) RDP подключений с помощью скрипта
- Удаление сохраненных RDP паролей
Удаление журнала RDP подключений из реестра системы
Информация о всех RDP подключениях хранится в реестре каждого пользователя. Удалить компьютер(ы) из списка истории rdp подключений штатными средствами Windows не получится, придется вручную удалять ключи в системном реестре.
- Откройте редактор реестра regedit.exe и перейдите в ветку HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client
- Нас интересуют две подветки: Default (хранит историю о 10 последних rdp подключениях) и Servers (содержит список всех rdp серверов и имен пользователей, используемых ранее для входа)
- Развернем ветку реестра HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client\Default, в которой содержится список 10 адресов или имен удаленных компьютеров, которые использовались последними (MRU – Most Recently Used). Имя (ip адрес) терминального сервера хранится в значении ключа MRU*. Чтобы очистить историю последних rdp-соединений, выделите все ключи с именами MRU0-MRU9, щелкните правой клавишей и выберите пункт Delete.
- Развернем далее ветку HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client\Servers. В ней содержится список всех RDC (remote desktop client) соединений, которые когда либо устанавливались с данного компьютера. Если развернуть ветку с именем (ip адресом) любого сервера, то в ключе UsernameHint (подсказка имени пользователя) можно увидеть имя пользователя, под которым осуществлялось rdp соединение.
- Чтобы очистить историю всех rdp-подключений и сохраненных имен пользователей необходимо очистить содержимое ветки реестра Servers. Т.к. выделить все ветки не получится, проще всего удалить целиком Servers ветку, а затем пересоздать ее вручную.
- Помимо указанных ключей реестра, необходимо удалить файл дефолтного rdp подключения Default.rdp (содержит информацию о самом последнем rdp подключении. Файл является скрытым и находится в каталоге Documents (Документы).
Примечание. Описанная методика очистки истории терминальных rdp подключений работает как на всех версиях Windows XP, Vista, Windows 7, Windows 8 (как включить rdp в Windows 8) и Windows 10, так и серверных платформах Windows Server 2003/2008/2012/2016.
Очистка истории (логов) RDP подключений с помощью скрипта
Выше мы разобрали методику «ручной» очистки истории соединений. Однако делать это вручную (особенно на нескольких компьютерах) – занятие достаточно долгое. Поэтому мы предлагаем небольшой скрипт (bat-файл), который позволяет автоматически очищать историю подключений к удаленным рабочим столам.
Для автоматизации очистки истории rdp, данный скрипт можно поместить в автозагрузку, либо распространить его на компьютеры пользователей с помощью групповой политики.
@echo off reg delete "HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client\Default" /va /f reg delete "HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client\Servers" /f reg add "HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client\Servers" cd %userprofile%\documents\ attrib Default.rdp -s -h del Default.rdp
Последовательно разберем все действия скрипта:
- Отключаем вывод информации в консоль
- Удаляем все значения в ветке HKCU\Software\Microsoft\Terminal Server Client\Default (очищаем список последних rdp соединений)
- Удаляем все содержимое ветки HKCU\Software\Microsoft\Terminal Server Client\Servers (очистка истории rdp подключений и сохраненных имен пользователей)
- Пересоздаем удаленную ранее ветку
- Переходим в каталог с файлом Default.rdp. Отметим, что в данном случае путь к папке «Документы» будет отличаться в зависимости от версии и языка Windows. В данном примере указан путь для Windows 7 En, для XP RUS – он будет выглядеть cd %userprofile%\”Мои документы”, для XP ENG — cd %userprofile%\”My Documents” и т.д.
- Меняем атрибуты файла Default.rdp — по умолчанию он является системным и скрытым (как отобразить скрытые файлы в Windows)
- Удаляем файл Default.rdp
Скачать готовый скрипт можно тут: CleanRDPHistory.bat
Кроме того, очистить историю подключений RDP можно с помощью следующего PowerShell скрипта:
Примечание. Кстати, функция очистка логов RDC встроена во многие «чистильщики» системы и реестра, такие как, CCCleaner и т.д.
Get-ChildItem "HKCU:\Software\Microsoft\Terminal Server Client" -Recurse | Remove-ItemProperty -Name UsernameHint -Ea 0
Remove-Item -Path 'HKCU:\Software\Microsoft\Terminal Server Client\servers' -Recurse 2>&1 | Out-Null
Remove-ItemProperty -Path 'HKCU:\Software\Microsoft\Terminal Server Client\Default' 'MR*' 2>&1 | Out-Null
$docsfoldes = [environment]::getfolderpath("mydocuments") + '\Default.rdp'
remove-item $docsfoldes -Force 2>&1 | Out-Null
В том случае, если в Windows необходимо полностью заблокировать ведение истории подключений удаленного рабочего стола, можно попробовать запретить системе запись в данную ветку реестра (но, стоит понимать, что это уже unsupported configuration…).
Удаление сохраненных RDP паролей
В том случае, если при установке удалённого RDP подключения, перед вводом пароля пользователь поставил галку Remember Me / Запомнить меня, то имя пользователя и пароль будут сохранены в системном менеджере паролей системы (Credential Manager). При следующем подключении к этому же компьютеру, RDP клиент автоматически использует сохранённый ранее пароль для авторизации на удаленном компьютере.

Удалить данный пароль можно прямо из окна клиента mstsc.exe. Выберите в списке подключений тоже самое подключение, и нажмите на кнопку Delete. Далее подтвердите удаление сохраненного пароля.

Либо можно удалить сохраненный пароль непосредственно из менеджера паролей Windows. Откройте в панель управления и перейдите в раздел Control Panel\User Accounts\Credential Manager. Выберите Manage Windows Credentials и в списке сохранённых паролей найдите имя компьютера (в формате TERMSRV/192.168.1.100). Разверните найденный элемент и нажмите на кнопку Remove.

В доменной среде запретить сохранение паролей для RDP подключений можно с помощью политики Network access: Do not allow storage of passwords and credentials for network authentication