Очистка истории RDP-соединений

CLAY
Оффлайн
Регистрация
25.01.17
Сообщения
763
Реакции
224
Репутация
292
RDP клиент в Windows (mstsc.exe) при каждом успешном соединении с удаленным компьютером сохраняет в системе его имя (или ip адрес) и имя пользователя, под которым был выполнен вход. В дальнейшем эта информация используется rdp клиентом, который предлагает пользователю выбрать одно из подключений, которыми он уже пользовался ранее, позволяя выбрать из списка имя удаленного rdp сервера, и подставляет используемое для входа имя пользователя.

Это удобно с точки зрения конечного пользователя, однако несекьюрно с точки зрения безопасности, особенно когда rdp соединение инициируется с общедоступного или недоверенного компьютера.


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



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

Как удалить историю RDP соединений в Windows

Удалить комьютер(ы) из списка истории rdp подключений обычными средствами Windows не получится, придется вносить изменения в системный реестр.

  1. Откройте редактор реестра regedit.exe и перейдите в веткуHKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client
  2. Нас интересуют две подветки: Default (хранит историю о 10 последних rdp подключениях) и Servers(содержит список всех rdp серверов и имен пользователей, используемых ранее для входа)
  3. Развернем ветку HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client\Default, в которой содержится список 10 терминальных серверов, который использовались последними (MRU – Most Recently Used). Имя (ip адрес) терминального сервера хранится в значении ключа MRU*. Чтобы очистить историю последних rdp-соединений, выделите все ключи с именами MRU0-MRU9, щелкните правой клавишей и выберите пункт Delete.
  4. Развернем далее ветку HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client\Servers. В ней содержится список всех RDC (remote desktop client) соединений, которые когда либо устанавливались с данного компьютера. Если развернуть ветку с именем (ip адресом) любого сервера, то в ключеUsernameHint (подсказка имени пользователя) можно увидеть имя пользователя, под которым осуществлялось rdp соединение.
  5. Чтобы очистить историю всех rdp-подключений и сохраненных имен пользователей необходимо очистить содержимое ветки Servers. Т.к. выделить все ветки не получится, проще всего удалить целиком Servers ветку, а затем просто пересоздать ее.
  6. Помимо указанных веток в реестре, необходимо удалить дефолтное rdp соединение (содержит информацию о самом последнем rdp подключении), хранящееся в файле Default.rdp (файл является скрытым и находится в каталоге Documents (Мои документы).
Примечание. Описанная методика очистки истории терминальных rdp подключений работает как на всех версиях Windows XP, Vista, Windows 7, Windows 8 (как ), так и серверных платформах Windows Server 2003/2008/2012.

Очистка историю (логов) подключений по 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

Последовательно разберем все действия скрипта:

  1. Отключаем вывод информации в консоль
  2. Удаляем все значения в ветке HKCU\Software\Microsoft\Terminal Server Client\Default (очищаем список последних подключений)
  3. Удаляем все содержимое ветки HKCU\Software\Microsoft\Terminal Server Client\Servers (очистка истории rdpподключений и сохраненных имен пользователей)
  4. Пересоздаем удаленную ранее ветку
  5. Переходим в каталог с файлом Default.rdp. Отметим, что в данном случае путь к папке «Мои Документы» будет отличаться в зависимости от версии и языка Windows. В данном примере указан путь для Windows 7 En, для XP RUS – он будет выглядеть cd %userprofile%\”Мои документы”, для XP ENG — cd %userprofile%\»My Documents» и т.д.
  6. Меняем атрибуты файла Default.rdp — по умолчанию он системный и является скрытым ( )
  7. Удаляем файл Default.rdp
Скачать готовый скрипт можно тут:

Примечание. Кстати, функция очистка логов RDC встроена во многие «чистильщики» системы и реестра, такие как, CCCleaner и т.д.
В том случае если необходимо совсем отключить историю remote desktop, можно попробовать запретить системе запись в данную ветку реестра как в статье описывающей запрет (но, стоит понимать, что это уже unsupported configuration…).
 
  • Like
Реакции: simplenickname
Сверху Снизу