¿Has visto el evento “http://+:3387.rdp was successfully added” tras reinstalar Windows 11? Tranquilidad: es una reserva de URL del subsistema HTTP de Windows para que un servicio del sistema pueda usar ese prefijo si lo necesita. No abre el puerto por sí misma ni cambia el puerto de RDP por defecto (3389).
Respuesta corta
El mensaje indica que Windows ha creado una URL ACL (reserva de prefijo) en HTTP.sys
para http://+:3387…
. Esto no inicia un servicio escuchando en ese puerto, no cambia el puerto de Escritorio remoto y es un comportamiento normal durante instalaciones, habilitación de funciones de Escritorio remoto o determinadas actualizaciones. El puerto predeterminado de RDP sigue siendo 3389, salvo que lo hayas modificado explícitamente.
Qué significa exactamente
Windows usa el controlador HTTP.sys
para que procesos en modo usuario (servicios o aplicaciones del sistema) atiendan peticiones HTTP sin tener que abrir sockets y gestionar HTTP por su cuenta. Para hacerlo de forma segura, los procesos solicitan el “derecho” a usar un prefijo de URL; esto se registra como una URL ACL con netsh http add urlacl
y queda en el sistema como “reserva”.
Cuando el Visor de eventos notifica “http://+:3387.rdp was successfully added” está informando que se añadió con éxito una de esas reservas. Desglosado:
http://
: protocolo HTTP manejado porHTTP.sys
.+
: comodín de host (strong wildcard) para todas las direcciones.:3387
: número de puerto del prefijo reservado. No es el puerto activo de RDP..rdp
: parte del literal del prefijo registrado. Según el componente que la cree, puede formar parte del host o de la ruta del prefijo. Lo relevante es que es una cadena de prefijo, no tu configuración de puerto RDP.
Idea clave: una URL ACL es sólo un permiso que reserva un prefijo para un servicio. No abre ni expone el puerto por sí sola. Sólo hay exposición si existe un proceso escuchando realmente.
Resumen en una mirada
Aspecto | Detalle |
---|---|
Componente | Controlador HTTP de Windows (HTTP.sys ) |
Tipo de evento | Alta correcta de reserva de prefijo (URL ACL) |
¿Abre el puerto? | No. Sin proceso escuchando ⇒ nada expuesto. |
¿Cambia el puerto de RDP? | No. RDP permanece en 3389 por defecto salvo cambio manual. |
¿Es normal verlo? | Sí. Tras instalación, habilitar Escritorio remoto, actualizaciones o preparación de componentes de Terminal Services. |
¿Registro relacionado | Registros de HTTP.sys y, en algunos equipos, canales “HttpEvent/HttpService”. |
Por qué aparece
Diversos componentes de Windows y de Servicios de Escritorio remoto se preparan creando reservas de URL para escenarios como administración remota, compatibilidad con servicios auxiliares o APIs HTTP internas. Durante una reinstalación o actualización, es habitual que Windows reestablezca esas reservas para garantizar que, si el servicio se inicia, dispondrá del prefijo sin colisiones.
Comprobaciones rápidas recomendadas
Si quieres confirmar que todo está en orden, estas pruebas te darán certezas inmediatas.
Ver si existe algo escuchando en el puerto
En Símbolo del sistema (CMD):
netstat -ano | findstr :3387
En PowerShell:
Get-NetTCPConnection -LocalPort 3387 -ErrorAction SilentlyContinue
Get-NetUDPEndpoint -LocalPort 3387 -ErrorAction SilentlyContinue
Interpretación: sin salida ⇒ no hay servicio activo en ese puerto. Si ves una línea con “LISTENING”, anota el PID para identificar el proceso.
Listar reservas HTTP existentes
En CMD:
netsh http show urlacl
Busca una entrada que coincida con la cadena del evento. Esto sólo confirma la reserva.
Confirmar el puerto real de RDP
En CMD (Registro):
reg query "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v PortNumber
En PowerShell:
(Get-ItemProperty "HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp").PortNumber
Si obtienes 3389
, RDP no ha cambiado de puerto.
Ver quién usaría cada URL registrada
En CMD con permisos de administrador:
netsh http show servicestate
Este informe detalla grupos, prefijos y, en muchos casos, el proceso asociado. Puedes filtrar:
netsh http show servicestate | findstr /i 3387
Identificar un proceso escuchando
Si netstat
mostró un PID escuchando en 3387:
tasklist /fi "PID eq <PID>"
o en PowerShell:
Get-Process -Id <PID> | Select-Object Id,ProcessName,Path
Interpretación avanzada
Diferencia entre reserva y escucha real
- Reserva (URL ACL): permiso para que un servicio pueda registrar en el futuro el prefijo. No hay socket abierto.
- Escucha: un proceso registra efectivamente el prefijo y abre el socket. Lo verías con
netstat
oGet-NetTCPConnection
.
Qué es HTTP.sys
Es el controlador de modo kernel de Windows para HTTP. Centraliza la terminación de conexiones, colas, seguridad de prefijos (URL ACL) y otras funciones. Muchos componentes del sistema e IIS dependen de él.
Por qué puede aparecer la cadena con “.rdp”
El Visor de eventos muestra prefijos de URL tal como los pasa el componente que los reserva. A veces esa notación incluye sufijos como .rdp
o segmentos de ruta. No es una indicación de que tu puerto de Escritorio remoto sea ése, sino del literal de la reserva usada por el componente.
Cuándo eliminar la reserva y cómo hacerlo
No suele ser necesario eliminarla. Si no usas ninguna característica que dependa de esa reserva y te incomoda verla, puedes retirarla. Hazlo sólo si comprendes el impacto: Windows podría recrearla si un componente la necesita.
- Abre CMD como administrador.
- Lista las reservas y copia la URL exacta:
netsh http show urlacl
- Elimina la reserva con la cadena exacta:
netsh http delete urlacl url=<pegaaquílaURLexactadelevento>
Nota: si alguna función del sistema la necesita, Windows la volverá a crear. Eliminarla podría afectar temporalmente a funciones de administración o diagnóstico que pasen por HTTP.sys.
Buenas prácticas de seguridad
- Mantén Escritorio remoto desactivado si no lo usas: Configuración → Sistema → Escritorio remoto.
- Deja activo el Firewall de Windows y evita abrir puertos innecesarios.
- Si cambias el puerto de RDP por decisión propia, documenta el cambio y ajusta las reglas del firewall y los accesos de administración remota.
- Usa contraseñas robustas y, si expones RDP hacia internet, valora VPN o RD Gateway.
- Revisa actualizaciones y mantén el sistema al día.
Si el puerto aparece abierto de verdad
En el caso menos común de ver un proceso escuchando en 3387, sigue estos pasos:
- Confirma la escucha:
netstat -ano | findstr :3387
- Identifica el proceso y su ruta:
tasklist /fi "PID eq <PID>" Get-Process -Id <PID> | Select-Object Id,ProcessName,Path
- Comprueba reglas de firewall que permitan 3387:
Get-NetFirewallRule -Enabled True -Action Allow | Get-NetFirewallPortFilter | Where-Object {$_.LocalPort -eq 3387}
- Si no necesitas ese listener, deshabilita o detén el servicio asociado:
Stop-Service -Name <NombreDelServicio> -Force Set-Service -Name <NombreDelServicio> -StartupType Disabled
o elimina la regla de firewall específica.
Guía paso a paso de verificación completa
- Estado de RDP: abre Configuración → Sistema → Escritorio remoto y verifica que esté como deseas.
- Puerto de RDP en el Registro:
reg query "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v PortNumber
- Listeners activos:
netstat -ano | findstr /r /c:":3389 " /c:":3387 "
- Reservas HTTP:
netsh http show urlacl netsh http show servicestate | findstr /i 3387
- Firewall:
Get-NetFirewallRule -DisplayGroup "Remote Desktop" | Where-Object Enabled -eq True
Tabla de decisiones
Hallazgo | Acción recomendada |
---|---|
No hay salida en netstat para 3387 | Dejar todo como está. Es sólo una reserva. |
PID escuchando en 3387 y lo necesitas | Documentar, asegurar por firewall y monitorear. |
PID escuchando en 3387 y no lo necesitas | Detener servicio, eliminar/ajustar reglas de firewall y, opcionalmente, eliminar la URL ACL. |
RDP usa 3389 según el Registro | Todo normal. El evento no afecta RDP. |
RDP con puerto distinto a 3389 sin que lo recuerdes | Auditar quién cambió el valor, revisar GPOs y políticas de seguridad antes de revertir. |
Preguntas frecuentes
¿Este evento significa que me han cambiado el puerto de RDP?
No. El puerto de RDP se define en el Registro y por defecto es 3389. La reserva http://+:3387… no lo modifica.
¿La reserva expone el equipo a internet?
No por sí misma. Sólo una escucha activa expone un puerto. Verifícalo con netstat
o Get-NetTCPConnection
.
¿Puedo borrar la reserva sin riesgos?
Puedes, pero no suele hacer falta. Si un componente la necesita, reaparecerá. Si la quitas y algo falla, habilitar de nuevo la característica o reiniciar los servicios implicados suele restaurarla.
¿Por qué el evento aparece tras reinstalar Windows?
Porque en la configuración inicial Windows recompone reservas y dependencias para funciones del sistema, incluidas las de Escritorio remoto.
¿Qué relación tiene con IIS?
Ambos usan HTTP.sys
, pero esta reserva no implica que tengas IIS instalado ni activo.
Glosario útil
- HTTP.sys: controlador de Windows que implementa el stack HTTP de bajo nivel.
- URL ACL: lista de control de acceso de prefijo; determina quién puede reservar y usar un prefijo HTTP.
- Prefijo de URL: patrón como
http://host:puerto/segmento/
que un servicio registra para atender peticiones. - Listener: proceso que abre un socket y acepta conexiones en un puerto.
Scripts listos para copiar
PowerShell — verificación completa:
# Comprobar si hay escucha en 3387
Get-NetTCPConnection -LocalPort 3387 -ErrorAction SilentlyContinue
Get-NetUDPEndpoint -LocalPort 3387 -ErrorAction SilentlyContinue
Puerto real de RDP
(Get-ItemProperty "HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp").PortNumber
Reservas HTTP y posible propietario
netsh http show urlacl
netsh http show servicestate | findstr /i 3387
Reglas de firewall relevantes
Get-NetFirewallRule -DisplayGroup "Remote Desktop" | Where-Object Enabled -eq True
CMD — verificación rápida:
netstat -ano | findstr :3387
reg query "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v PortNumber
netsh http show urlacl
netsh http show servicestate | findstr /i 3387
tasklist /fi "PID eq <PID>"
Conclusión
El evento “http://+:3387.rdp was successfully added” describe una reserva interna y habitual del sistema en HTTP.sys
. No implica que el puerto 3387 esté abierto ni que RDP haya cambiado de puerto. Con las comprobaciones propuestas puedes verificar en minutos que no existe exposición, y si no hay listeners, puedes ignorar el evento con tranquilidad. Sólo si detectas algo escuchando en 3387 que no necesitas, identifica el proceso, ajusta el firewall y, opcionalmente, elimina la reserva. Mantener Escritorio remoto desactivado cuando no se use, junto con un firewall activo y un sistema actualizado, es suficiente para estar cubierto.
En definitiva: es un mensaje informativo, normal y sin riesgo por sí mismo. Tu configuración de Escritorio remoto permanece inalterada salvo que tú (o una política) la hayan cambiado.