В этой статье мы покажем, как удалить историю подключений к удаленным рабочим столам в Windows и как можно избавиться от сохраненных паролей. Это необходимо для обеспечения конфиденциальности и безопасности, особенно при использовании общедоступных или недоверенных компьютеров.
Удалить историю RDP подключений в Windows
Windows сохраняет историю RDP подключений в нескольких местах, поэтому для полного удаления потребуется очистить данные во всех этих местах.
Удалить историю RDP через реестр пользователя:
1. Откройте редактор реестра regedit.exe и перейдите по пути HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client.
2. В разделе Default находятся записи о последних 10 RDP подключениях. Эти записи называются MRU0-MRU9 (MRU – Most Recently Used) и содержат IP адреса или имена RDP хостов. Выберите и удалите все эти параметры.
3. Затем перейдите в раздел Servers, где содержится информация обо всех RDP серверах и учетных записях пользователей, которые были использованы ранее. Имя пользователя хранится в параметре UsernameHint, а отпечаток сертификата сервера — в параметре CertHash.
Для удаления истории просто удалите весь раздел Servers и пересоздайте его вручную.
Удалить файл Default.rdp:
Удалите скрытый файл Default.rdp, который находится в профиле пользователя в папке %userprofile%\Documents. В этом файле хранится информация о последнем подключении.
Просмотр и очистка журналов RDP подключений:
При подключении через RDP, Windows сохраняет логи в Event Viewer (раздел Applications and Services Logs -> Microsoft -> Windows -> TerminalServices-ClientActiveXCore -> Microsoft-Windows-TerminalServices-RDPClient/Operational).
Чтобы просмотреть все исходящие подключения, используйте командлет:
$properties = @(
@{n='TimeStamp';e={$_.TimeCreated}}
@{n='LocalUser';e={$_.UserID}}
@{n='Target RDP host';e={$_.Properties[1].Value}}
)
Get-WinEvent -FilterHashTable @{LogName='Microsoft-Windows-TerminalServices-RDPClient/Operational';ID='1102'} | Select-Object $properties
Очистить эти логи можно через Event Viewer или используя команду:
WevtUtil cl Microsoft-Windows-TerminalServices-RDPClient/Operational
Очистка истории RDP в меню Пуск и на панели задач:
Если вы наберете mstsc в строке поиска Windows или щелкните правой кнопкой мыши по клиенту на панели задач, то увидите список Recent, где будут отображены последние подключения. Чтобы удалить эту историю, очистите список Recent Items, удалив файлы в папке %AppData%\Microsoft\Windows\Recent\AutomaticDestinations.
Скрипт очистки истории RDP подключений
Для быстрой очистки истории подключений можно использовать следующий BAT скрипт:
@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"
attrib -s -h %userprofile%\documents\Default.rdp
del %userprofile%\documents\Default.rdp
del /f /s /q /a %AppData%\Microsoft\Windows\Recent\AutomaticDestinations
Также можно воспользоваться аналогичным PowerShell скриптом для удаления всех записей из истории RDP подключений:
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
Очистка Bitmap кэша клиента RDP
RDP клиент сохраняет кэш редко изменяющихся областей удаленного рабочего стола в виде растровых изображений для уменьшения объема передаваемых данных. Кэш хранится в файлах *.bmc и *.bin в каталоге %LOCALAPPDATA%\Microsoft\Terminal Server Client\Cache.
Для безопасности рекомендуется очистить эту папку и отключить опцию Persistent bitmap caching на вкладке Experience в RDP клиенте.
Как запретить Windows сохранять историю RDP подключений?
Если нужно запретить Windows сохранять историю RDP подключений, отключите запись в реестре HKCU\Software\Microsoft\Terminal Server Client. Отключите наследование разрешений (Permissions -> Advanced -> Disable inheritance) и измените ACL, выставив запрет для всех пользователей, администраторов и SYSTEM. (но, вы должны понимать, что это уже unsupported configuration).
Удаление сохраненных RDP паролей
RDP клиент позволяет сохранять пароли пользователей для подключений в Credential Manager Windows и подключаться к удаленным хостам без повторного ввода пароля.
Чтобы удалить сохраненные пароли, откройте Credential Manager с помощью команды:
rundll32.exe keymgr.dll,KRShowKeyMgr
и удалите все записи с префиксом TERMSRV\.
Также можно удалить сохраненные учетные данные с помощью команды:
For /F "tokens=1,2 delims= " %G in ('cmdkey /list ^| findstr "target=TERMSRV"') do cmdkey /delete %H
Чтобы запретить пользователям сохранять пароли для RDP, включите параметр Do not allow passwords to be saved в разделе Computer Configuration -> Administrative Templates -> Windows Components -> Desktop Services -> Remote Desktop Connection Client.