Cómo cambiar el puerto RDP usando SCCM | PowerShell | Registro
Esta guía cubre diferentes métodos para cambiar el puerto RDP (puerto de escritorio remoto) en computadoras con Windows, como SCCM (ConfigMgr), CMPivot, PowerShell y el registro de Windows.
La función Escritorio remoto de su computadora escucha la solicitud de conexión a través de un puerto designado 3389 cuando usa el cliente de Escritorio remoto para conectarse a una computadora (ya sea un cliente Windows o un servidor Windows). El puerto de escritorio remoto (puerto RDP) 3389 en Windows es un objetivo popular para los piratas informáticos. Por tanto, podría tener sentido cambiar el puerto RDP.
Después de cambiar el puerto RDP, la próxima vez que se conecte a esta computadora mediante la conexión de Escritorio remoto, deberá escribir el nuevo puerto. Si está utilizando un firewall, asegúrese de configurarlo para permitir conexiones al nuevo número de puerto.
Tenga en cuenta que el puerto 1-1023 no debe usarse al seleccionar un puerto RDP no estándar porque son puertos conocidos, pero el puerto 49152-65535 es dinámico o privado. puerto que no está siendo utilizado por ningún servicio o aplicación. Por ejemplo, puede cambiar el puerto RDP de 3389 a 33091.
- Cómo apagar o deshabilitar el escritorio remoto en Windows 11
- Cómo habilitar el escritorio remoto mediante la política de grupo (GPO)
- Deshabilite el acceso a escritorio remoto mediante Intune (MEM)
- Implementar cliente de escritorio remoto mediante SCCM | Administrador de configuración
¿Por qué cambiar el número de puerto RDP?
Microsoft utiliza el puerto 3389 para todas las comunicaciones externas. Los piratas informáticos utilizan con frecuencia una técnica de adivinación automática de contraseñas para conectarse a computadoras distantes utilizando el puerto de escucha 3389. Este tipo de ataques, como el que acaba de descubrir Microsoft, se conocen como ataques de fuerza bruta y de pulverización de contraseñas.
Sin duda, este grave fallo de seguridad pone en peligro tus ordenadores remotos. Muchos administradores deciden modificar el número de puerto RDP de 3389 a cualquier otro puerto disponible para solucionar esta vulnerabilidad, lo que hace que sea más difícil para los piratas informáticos descubrir el puerto de escucha.
Además de defenderse de los piratas informáticos, los administradores modifican el número de puerto RDP para sortear los firewalls. Los firewalls de algunos sistemas están configurados para evitar mensajes entrantes y salientes hacia y desde el puerto 3389, respectivamente, por motivos de seguridad. El propósito de este enfoque no es tanto bloquear el acceso remoto como impedir que los piratas informáticos ingresen al sistema a través del puerto. Cambiar el puerto RDP ayuda a reducir el riesgo de escáneres de puertos y vulnerabilidades RDP.
Verifique el número de puerto RDP usando PowerShell
En cualquier computadora con Windows, puede verificar el número de puerto RDP ejecutando el siguiente comando de PowerShell.
Get-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp' -name "PortNumber"Vemos que el número de puerto RDP en la computadora dada es 3389.
PortNumber : 3389
PSPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal
Server\WinStations\RDP-Tcp
PSParentPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal
Server\WinStations
PSChildName : RDP-Tcp
PSDrive : HKLM
PSProvider : Microsoft.PowerShell.Core\RegistryCambiar el puerto RDP usando el Registro
Puede cambiar el puerto de escucha para Escritorio remoto en su computadora usando el Registro. Asegúrese de hacer una copia de seguridad del registro antes de realizar cambios.
- Inicie el editor de registro. (Escriba regedit en el cuadro de búsqueda).
- Navegue hasta la siguiente subclave de registro: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp
- Busque la clave de registro PortNumber cuyo valor predeterminado es 3389.
- Haga clic con el botón derecho en la tecla Número de puerto y seleccione Modificar. En Editar valor DWORD (32 bits), seleccione Decimal, escriba el nuevo número de puerto y luego haga clic en Aceptar. Cierre el editor de registro y reinicie su computadora.
En la captura de pantalla siguiente, cambié el puerto del escritorio remoto de 3389 a 33091.
Para confirmar si se cambia el número de puerto del escritorio remoto, ejecute el siguiente comando de PowerShell.
Get-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp' -name "PortNumber"
En el resultado, vemos que el número de puerto RDP muestra 33091 y esto confirma que hemos cambiado exitosamente el puerto del escritorio remoto usando el registro.
Cambiar el puerto RDP usando PowerShell
Una de las formas más rápidas de cambiar el puerto del escritorio remoto es utilizar un script de PowerShell. Puede utilizar el script de PowerShell para cambiar el número de puerto de escucha RDP en varias computadoras.
Microsoft proporciona el siguiente script de PowerShell que establece el puerto de escritorio remoto en 3390. El script también agrega la regla de firewall para permitir el puerto RDP en la computadora.
$portvalue = 3390
Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp' -name "PortNumber" -Value $portvalue
New-NetFirewallRule -DisplayName 'RDPPORTLatest-TCP-In' -Profile 'Public' -Direction Inbound -Action Allow -Protocol TCP -LocalPort $portvalue
New-NetFirewallRule -DisplayName 'RDPPORTLatest-UDP-In' -Profile 'Public' -Direction Inbound -Action Allow -Protocol UDP -LocalPort $portvaluePara ejecutar el script de PowerShell anterior, inicie PowerShell como administrador en su computadora y ejecute el script. También puede abrir Windows PowerShell ISE, pegar el código y editarlo antes de ejecutarlo.
También puede implementar el script de PowerShell de cambio de puerto RDP en varias computadoras usando Microsoft Intune o Configuration Manager.
Agregar reglas de firewall para puertos RDP personalizados
Debe modificar el firewall de Windows Defender para permitir su nuevo puerto RDP personalizado después de cambiar el puerto RDP predeterminado a un puerto personalizado. Para agregar reglas para puertos RDP únicos, use los scripts de PowerShell a continuación.
New-NetFirewallRule -DisplayName 'RDPPORTLatest-TCP-In' -Profile 'Public' -Direction Inbound -Action Allow -Protocol TCP -LocalPort $portvalue
New-NetFirewallRule -DisplayName 'RDPPORTLatest-UDP-In' -Profile 'Public' -Direction Inbound -Action Allow -Protocol UDP -LocalPort $portvalueName : {d601232d-c37c-402e-88d7-8313cd2acefd}
DisplayName : RDPPORTLatest-TCP-In
Description :
DisplayGroup :
Group :
Enabled : True
Profile : Public
Platform : {}
Direction : Inbound
Action : Allow
EdgeTraversalPolicy : Block
LooseSourceMapping : False
LocalOnlyMapping : False
Owner :
PrimaryStatus : OK
Status : The rule was parsed successfully from the store. (65536)
EnforcementStatus : NotApplicable
PolicyStoreSource : PersistentStore
PolicyStoreSourceType : Local
RemoteDynamicKeywordAddresses : {}
Name : {de0e40f9-7420-4054-ae98-028a4c7f0abe}
DisplayName : RDPPORTLatest-UDP-In
Description :
DisplayGroup :
Group :
Enabled : True
Profile : Public
Platform : {}
Direction : Inbound
Action : Allow
EdgeTraversalPolicy : Block
LooseSourceMapping : False
LocalOnlyMapping : False
Owner :
PrimaryStatus : OK
Status : The rule was parsed successfully from the store. (65536)
EnforcementStatus : NotApplicable
PolicyStoreSource : PersistentStore
PolicyStoreSourceType : Local
RemoteDynamicKeywordAddresses : {}Consulta CMPivot para verificar el puerto RDP
Puede consultar rápidamente los valores del registro utilizando CMPivot. Con una consulta CMPivot simple, puede verificar el puerto RDP en varias computadoras en SCCM.
- Inicie la consola ConfigMgr y vaya a Activos y cumplimiento > Descripción general > Colecciones de dispositivos.
- Haga clic derecho en la colección de dispositivos y seleccione Iniciar CMPivot.
- Ejecute la siguiente consulta CMPivot para verificar el puerto RDP de todos los dispositivos dentro de la colección de dispositivos.
Registry('HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp') | where Property == 'PortNumber'Cambiar el puerto RDP usando SCCM
Ahora que tenemos un script de PowerShell que nos permite modificar el número de puerto del escritorio remoto, podemos implementar este script a través de SCCM. Usaremos la función de scripts SCCM para lograr esto.
En la consola ConfigMgr, vaya a \Software Library\Overview\Scripts. Cree un nuevo script y en la ventana Detalles del script, especifique los siguientes detalles.
- Nombre del script: cambiar el puerto RDP
- Descripción del script: modifica el puerto RDP
- Lenguaje de secuencia de comandos: PowerShell
- Segundos de tiempo de espera del script: 200 segundos
En la ventana del script, pegue el siguiente script de PowerShell, haga clic en Siguiente y cierre el asistente Crear script.
$portvalue = 3390
Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp' -name "PortNumber" -Value $portvalue
New-NetFirewallRule -DisplayName 'RDPPORTLatest-TCP-In' -Profile 'Public' -Direction Inbound -Action Allow -Protocol TCP -LocalPort $portvalue
New-NetFirewallRule -DisplayName 'RDPPORTLatest-UDP-In' -Profile 'Public' -Direction Inbound -Action Allow -Protocol UDP -LocalPort $portvalueDebe aprobar el script de PowerShell antes de implementarlo en sus dispositivos. Haga clic derecho en el script Cambiar puerto RDP y seleccione Aprobar. Si el script Aprobar/Denegar está atenuado, consulte el artículo sobre cómo resolver que la opción Aprobar y Denegar del script SCCM esté deshabilitada.
Una vez que haya aprobado el script de PowerShell, haga clic con el botón derecho en la colección de dispositivos en la que desea ejecutar el script y seleccione Ejecutar script.
Seleccione el script de PowerShell que modifica el puerto RDP y haga clic en Siguiente. El Administrador de configuración ahora ejecuta el script en todos los dispositivos que forman parte de la colección de dispositivos. Los dispositivos deben estar en línea para que el script funcione. Cierre la ventana Ejecutar script una vez completada la ejecución del script.
Después de ejecutar el script de PowerShell, puede ejecutar la consulta CMPivot para verificar el número de puerto RDP en las computadoras. En el resultado de la consulta de CMPivot, vemos que el puerto de escucha para el escritorio remoto para todas las computadoras ahora cambió de 3389 a 3390.










