¿Cómo borrar el historial de conexiones RDP en Windows?

El cliente integrado de Windows Remote Desktop Connection (RDP) (mstsc.exe) guarda el nombre de la computadora remota (o dirección IP) y el nombre de usuario que se utiliza para iniciar sesión después de cada conexión exitosa a la computadora remota. En el siguiente inicio, el cliente RDP ofrece al usuario seleccionar una de las conexiones que se utilizó anteriormente. El usuario puede seleccionar el nombre del host RDS / RDP de la lista y el cliente completa automáticamente el nombre de usuario utilizado anteriormente para iniciar sesión.

Esto es conveniente desde la perspectiva del usuario final, pero inseguro desde el punto de vista de la seguridad. Especialmente cuando se conecta a su servidor RDP desde una computadora pública o que no es de confianza.

La información sobre todas las sesiones de RDP (terminal) se almacena individualmente en el subárbol de registro de cada usuario, es decir, un no administrador no podrá ver el historial de conexiones RDP de otro usuario.

historial de conexiones rdp en windows

En este artículo, mostraremos dónde Windows almacena el historial y las credenciales guardadas de las conexiones de Escritorio remoto, cómo eliminar entradas de la ventana mstsc y borrar los registros de RDP.

¿Cómo eliminar la caché de conexión RDP del registro?

La información sobre todas las conexiones RDP se almacena en el registro de cada usuario. Es imposible eliminar una computadora (o computadoras) de la lista del historial de conexiones RDP utilizando herramientas integradas de Windows. Tendrá que borrar manualmente algunas claves de registro.

  1. Ejecute el Editor del registro (regedit.exe) y busque la clave de registro Cliente HKEY_CURRENT_USER Software Microsoft Terminal Server;
  2. Necesita dos claves de registro en esta sección: Defecto (almacena el historial de las últimas 10 conexiones RDP) y Servidores (contiene la lista de todos los servidores RDP y nombres de usuario utilizados anteriormente para iniciar sesión);historial del cliente mstsc rdp en el registro de Windows
  3. Expanda la clave de registro HKEY_CURRENT_USER Software Microsoft Terminal Server Client Default que contiene la lista de 10 direcciones IP o nombres DNS de equipos remotos que se han utilizado recientemente (MRU – Usado más recientemente). El nombre (o la dirección IP) del servidor de escritorio remoto se almacena en el valor de la MRU *. parámetro. Para borrar el historial de las conexiones RDP más recientes, seleccione todos los parámetros con los nombres de MRU0-MRU9, haga clic derecho y seleccione Borrar;eliminar entradas rdp recientes del registro
  4. Ahora expande la clave HKEY_CURRENT_USER Software Microsoft Terminal Server Client Servers. Contiene la lista de todas las conexiones RDP que haya establecido este usuario. Expanda la tecla reg con el nombre (o dirección IP) de cualquier host. Preste atención al valor de la UsernameHint parámetro. Muestra el nombre de usuario utilizado para conectarse al host RDP / RDS. Este nombre de usuario se utilizará para conectarse al host RDP automáticamente. además, el CertHash la variable contiene la huella digital del certificado SSL del servidor RDP (consulte el artículo “Configuración de certificados TLS / SSL confiables para RDP”);historial de rdp en el registro: host y nombre de usuario guardados
  5. Para borrar el historial de todas las conexiones RDP y los nombres de usuario guardados, debe limpiar el contenido de la clave de registro de los servidores. Dado que es imposible seleccionar todas las claves de registro anidadas a la vez, es más fácil eliminar todo Servidores clave y luego recrearlo manualmente;eliminar servidores rdp recientes en el registro
  6. A continuación, debe eliminar el archivo de conexión RDP predeterminado (que contiene información sobre la última sesión de rdp): Default.rdp (este archivo es un archivo oculto ubicado en Documentos directorio).
  7. Windows también guarda las conexiones recientes de Escritorio remoto en Jump Lists. Si escribe mstsc En el cuadro de búsqueda de Windows 10, las conexiones RDP utilizadas anteriormente aparecerán en la lista. Puede deshabilitar completamente el archivo y la ubicación recientes de Windows 10 en la lista Jump con el parámetro dword del registro Start_TrackDocs en la tecla reg HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionExplorerAdvanced (ponerlo en 0), o puede borrar las listas de elementos reenviados eliminando archivos en el directorio %AppData%MicrosoftWindowsRecentAutomaticDestinations.rdp: los elementos recientes saltan listas en Windows 10

Nota. El método descrito para borrar el historial de conexiones de Escritorio remoto funciona en todas las versiones de escritorio de Windows (desde Windows XP a Windows 10) y para Windows Server.

Script para borrar el historial de conexiones RDP

Arriba hemos mostrado cómo borrar el historial de conexión RDP en Windows manualmente. Sin embargo, hacerlo manualmente (especialmente en varias computadoras) requiere mucho tiempo. Por lo tanto, ofrecemos un pequeño script (archivo BAT) que permite borrar automáticamente el historial de RDP.

Para automatizar la limpieza del historial de RDP, puede colocar este script en el inicio de Windows o ejecutarlo en los equipos de los usuarios mediante un script de cierre de sesión de GPO.

@echo off
reg delete "HKEY_CURRENT_USERSoftwareMicrosoftTerminal Server ClientDefault" /va /f
reg delete "HKEY_CURRENT_USERSoftwareMicrosoftTerminal Server ClientServers" /f
reg add "HKEY_CURRENT_USERSoftwareMicrosoftTerminal Server ClientServers"
attrib -s -h %userprofile%documentsDefault.rdp
del %userprofile%documentsDefault.rdp
del /f /s /q /a %AppData%MicrosoftWindowsRecentAutomaticDestinations

Consideremos todas las acciones del script:

  1. Desactive la salida de la información a la consola;
  2. Elimine todos los parámetros en la clave de registro HKCU Software Microsoft Terminal Server Client Default (borre la lista de conexiones RDP recientes);
  3. Elimine toda la clave de registro HKCU Software Microsoft Terminal Server Client Servers (borra la lista de todas las conexiones RDP y los nombres de usuario guardados);
  4. Vuelva a crear la clave de registro eliminada previamente;
  5. Cambie los atributos del archivo Default.rdp en el directorio de perfil del usuario actual (por defecto es Oculto y Sistema);
  6. Elimine el archivo Default.rdp;
  7. Borre las entradas de Conexión a escritorio remoto de la lista de elementos recientes.

Además, puede borrar el historial de conexiones RDP mediante el siguiente script de PowerShell:

Get-ChildItem "HKCU:SoftwareMicrosoftTerminal Server Client" -Recurse | Remove-ItemProperty -Name UsernameHint -Ea 0
Remove-Item -Path 'HKCU:SoftwareMicrosoftTerminal Server Clientservers' -Recurse  2>&1 | Out-Null
Remove-ItemProperty -Path 'HKCU:SoftwareMicrosoftTerminal Server ClientDefault' 'MR*'  2>&1 | Out-Null
$docs = [environment]::getfolderpath("mydocuments") + 'Default.rdp'
remove-item  $docs  -Force  2>&1 | Out-Null

Nota. Por cierto, la función de limpieza del historial de RDP está integrada en muchos «limpiadores» del sistema y del registro, como CCleaner, etc.

¿Cómo evitar que Windows guarde el historial de conexiones RDP?

Si NO desea que Windows guarde el historial de conexiones RDP, debe denegar la escritura en la clave de registro. HKCUSoftwareMicrosoftTerminal Server Client para todas las cuentas de usuario. Primero, deshabilite la herencia de permisos en la clave de registro especificada (Permisos -> Avanzado -> Deshabilitar herencia). Luego, cambie la clave de registro ACL marcando la casilla Negar opción para los usuarios (pero debe comprender que se trata de una configuración no admitida).

evitar que Windows guarde el historial de rdp en el registro

Como resultado, mstsc.exe simplemente no puede escribir información de conexión RDP en el registro.

¿Cómo borrar la caché de mapa de bits del escritorio remoto?

El cliente de Conexión a Escritorio remoto tiene una función de almacenamiento en caché de mapa de bits persistente de imágenes. El cliente RDP guarda fragmentos que rara vez cambian de la pantalla remota como caché de imágenes ráster. Gracias a esto, el cliente mstsc.exe carga partes de la pantalla que no han cambiado desde la última representación de la memoria caché de la unidad local. Esta función de almacenamiento en caché RDP reduce la cantidad de datos transmitidos a través de la red.

La caché RDP son dos tipos de archivos en un directorio %LOCALAPPDATA%MicrosoftTerminal Server ClientCache:

archivos de caché de mapa de bits rdp: bmc y bin

Estos archivos almacenan mapas de bits de pantalla RDP sin procesar en forma de mosaicos de 64 × 64 píxeles. Usando scripts simples de PowerShell o Python (fácilmente buscados por el RDP Cached Bitmap Extractor consulta), puede obtener archivos PNG con partes de la pantalla del escritorio remoto y usarlos para obtener información confidencial. El tamaño de los mosaicos es pequeño, pero suficiente para proporcionar información útil a una persona que estudia la caché de RDP.

extraer imagen png de archivos de caché rdp Extractor de mapa de bits en caché RDP

Puede evitar que el cliente RDP almacene la caché de imágenes de pantalla del escritorio remoto deshabilitando la Almacenamiento en caché de mapa de bits persistente opción en el Avanzado pestaña.

Cliente rdc (mstsc): deshabilita el almacenamiento en caché de mapa de bits

A veces, al usar la caché RDP, puede dañarse:

Bitmap Disk Cache Failure. Your disk is full or the cache directory is missing or corrupted.  Some bitmaps may not appear.

En este caso, debe borrar el directorio de caché de RDP o deshabilitar la opción Almacenamiento en caché de mapa de bits.

Borrado de credenciales de RDP guardadas

Si al establecer una nueva conexión RDP remota, antes de ingresar la contraseña, el usuario marca una opción Recuérdame, el nombre de usuario y la contraseña se guardarán en el Administrador de credenciales de Windows. La próxima vez que se conecte a la misma computadora, el cliente RDP utilizará automáticamente la contraseña previamente guardada para la autenticación en el host remoto.

mstsc puede guardar credenciales rdp

Puede eliminar la contraseña RDP guardada directamente desde la ventana mstsc.exe del cliente. Seleccione la misma conexión de la lista de conexiones y haga clic en el Borrar botón. Luego confirme la eliminación de las credenciales guardadas.

eliminar credenciales rdp guardadas

Alternativamente, puede eliminar la contraseña guardada de RDP directamente desde el Administrador de credenciales de Windows. Vaya a la sección Panel de control Cuentas de usuario Administrador de credenciales. Seleccione Administrar credenciales de Windows y en la lista de contraseñas guardadas busque el nombre de la computadora (en el siguiente formato TERMSRV/192.168.1.100). Expanda el elemento encontrado y haga clic en el Eliminar botón.

eliminar las credenciales de escritorio remoto del administrador de credenciales

En un entorno de dominio de Active Directory, puede deshabilitar el almacenamiento de contraseñas para conexiones RDP utilizando el GPO especial: Acceso a la red: no permita el almacenamiento de contraseñas y credenciales para la autenticación de la red. (ver un artículo).

Eliminación de registros de eventos relacionados con RDP en un host remoto

Los registros de conexión también se guardan en el lado del host RDP / RDS. Puede encontrar información sobre el historial de conexiones RDP en los registros del Visor de eventos:

  • Seguridad;
  • Registros de aplicaciones y servicios -> Microsoft -> Windows -> TerminalServices-RemoteConnectionManager -> Operational;
  • TerminalServices-LocalSessionManager -> Admin.

evento rdp TerminalServices-LocalSessionManager

Lea más sobre el análisis de los registros de conexión RDP en el artículo.

Puede borrar los registros de eventos en un servidor RDP mediante wevtutil o PowerShell.

Artículos Interesantes