
¿Qué es RDS y qué roles son necesarios?
Remote Desktop Services es un conjunto de roles de Windows Server que permite publicar escritorios y aplicaciones completas (RemoteApp) en hosts de servidor (RD Session Host) con equilibrio de sesiones y reconexión a través de RD Connection Broker, el portal web RD Web Access y, si es necesario, una puerta de enlace RD externa y un servicio de licencias RD independiente (CAL para usuarios/dispositivos).
Configuración mínima (ejemplo):
- 2× hosts de sesión RD (hosts de sesión)
- 1× administrador con roles RD Connection Broker + RD Web Access + RD Licensing (para el proyecto piloto, los roles se pueden combinar en un solo servidor)
Preparativos en AD:
- Todos los servidores se añaden a un dominio y se colocan en una unidad organizativa.
- Se crea un grupo (por ejemplo, rdsh-servers), al que se añaden todos los RDSH.
- Para los perfiles de red de los usuarios, se ha preparado un directorio compartido para los discos de perfil de usuario (UPD) (opcional).
Instalación de RDS a través del administrador de servidores (implementación estándar)
Abra el administrador de servidores y añada todos los servidores al grupo (Todos los servidores → Añadir un servidor):

Inicie el asistente: Agregar funciones y características → Instalación de servicios de escritorio remoto → Implementación estándar → Implementación basada en sesión.

Asignar roles por servidor (ejemplo a continuación: RDCB+RDWA en el administrador, RDSH en todos los nodos):

Confirme y espere a que esté disponible:
Después de la instalación, abra Administrador de servidores → Servicios de escritorio remoto → Vista previa:

En «Tareas → Modificar propiedades de implementación», especifique lo siguiente:
- Servidor de licencias y modo RDS CAL (por usuario o por dispositivo);
- URL RD Web Access;
- (posteriormente) certificados SSL para RDGW/RDWeb/Publishing/Redirector.
Para un escenario aislado (sin intermediario/web, en un único host), consulte la opción «RDSH autónomo» (trabajo en un grupo de trabajo).
Cree una colección de sesiones y conecte a los usuarios
Vaya a Servicios de escritorio remoto → Colecciones → Tareas → Crear una colección de sesiones:

Añadir hosts de sesión RD a la colección:

Especifique los grupos de usuarios (elimine los usuarios del dominio, añada los suyos, por ejemplo, los usuarios RDS) y active Disco de perfil de usuario si es necesario. A continuación, haga clic en Crear.
Para modificar los parámetros, abra las propiedades de la colección (Tareas → Modificar propiedades):

Las aplicaciones RemoteApp también se publican aquí, y se definen los límites de sesión (tiempos de espera para sesiones activas/desconectadas). Aquí encontrará una explicación clara de los tiempos de espera, ilustrada con imágenes.
Certificados y HTTPS para roles RDS (en resumen)
Para eliminar la advertencia de conexión insegura y habilitar la autenticación única (SSO), asigne los certificados SSL adecuados a los roles:
- RD Gateway, RD Web Access, RD Publishing, RD Redirector.
A través de PowerShell (ejemplo para un solo PFX y un intermediario $RDSCB):
$RDSCB = "msk-rdsman.contoso.local"
$Path = "C:\certs\rds-cert.pfx"
$Pwd = ConvertTo-SecureString "StrongPfxPassword!" -AsPlainText -Force
Set-RDCertificate -Role RDGateway -ImportPath $Path -Password $Pwd -ConnectionBroker $RDSCB -Force
Set-RDCertificate -Role RDWebAccess -ImportPath $Path -Password $Pwd -ConnectionBroker $RDSCB -Force
Set-RDCertificate -Role RDPublishing -ImportPath $Path -Password $Pwd -ConnectionBroker $RDSCB -Force
Set-RDCertificate -Role RDRedirector -ImportPath $Path -Password $Pwd -ConnectionBroker $RDSCB -Force
Get-RDCertificate
El acceso externo sin VPN es más seguro a través de RD Gateway (se suministra por separado; hay instrucciones detalladas disponibles).
Licencia (RDS CAL)
Instale la función «Licencia de escritorio remoto» (se puede realizar en el bróker), active el servidor de licencias e indique la dirección de este servidor y el modo de licencia (por usuario/por dispositivo) en la configuración de implementación. Los parámetros se definen en «Modificar propiedades de implementación» → «Licencia RD».
Tenga en cuenta las siguientes restricciones: un servidor Windows estándar sin RDS solo ofrece 2 conexiones RDP administrativas; se necesita una licencia RDS CAL para sesiones de usuario completas.
Implementación de aplicaciones (RemoteApp) y acceso
Implemente las aplicaciones en las propiedades de la colección (Programas RemoteApp → Publicar) o a través de PowerShell:
New-RDRemoteApp -Alias "Chrome" -DisplayName "Google Chrome" `
-FilePath "C:\Program Files\Google\Chrome\Application\chrome.exe" `
-ShowInWebAccess 1 -CollectionName "General" -ConnectionBroker $RDSCB
Los usuarios pueden conectarse de diferentes maneras:
- RD Web Access (portal web),
- accesos directos .rdp/RemoteApp
- o directamente a través del FQDN de la granja (si el agente y la entrada DNS están configurados).
Implementación rápida de una granja RDS con PowerShell (desde cero)
A continuación se muestra un ejemplo resumido: creación de una colección, asignación de grupos, publicación de RemoteApp. (Implemente las funciones como se ha descrito anteriormente a través de la interfaz gráfica o automatice el proceso según su norma).
$RDSCB = "msk-rdsman.contoso.local"
$RDSH1 = "msk-rds1.contoso.local"
$RDSH2 = "msk-rds2.contoso.local"
# Collection
New-RDSessionCollection `
-CollectionName "General" `
-SessionHost $RDSH1,$RDSH2 `
-ConnectionBroker $RDSCB `
-CollectionDescription "General users"
# Access
$Groups = @("CONTOSO\RDS-Users","CONTOSO\ServiceDesk")
Set-RDSessionCollectionConfiguration -CollectionName "General" -UserGroup $Groups
# App publication
New-RDRemoteApp -Alias "WordPad" -DisplayName "WordPad" `
-FilePath "C:\Program Files\Windows NT\Accessories\wordpad.exe" `
-ShowInWebAccess 1 -CollectionName "General" -ConnectionBroker $RDSCB
Red, firewall y diagnóstico
Abra los siguientes puertos en el firewall de Windows y la ACL externa del proveedor Windows VPS:
- RD Web: 443/TCP
- RD Gateway: 443/TCP
- RDP a RDSH a través de un intermediario: 3389/TCP (+ 3389/UDP para gráficos mejorados)
- Conexiones de intermediario/SQL entre servidores, de acuerdo con su esquema
Controles rápidos desde el cliente:
Test-NetConnection rds.contoso.ru -Port 443 # RDWeb/RDGW
Test-NetConnection rds.contoso.ru -Port 3389 # RDP (if you publish directly)
Existe un debate aparte sobre el «congelamiento»/pantalla negra durante el transporte UDP RDP.
Problemas comunes y soluciones rápidas
- El usuario no está incluido en la colección. Compruebe que se encuentra en el grupo de acceso a la colección correcto (no solo los usuarios del dominio).
- Broker invisible/error de reconexión. Compruebe la entrada DNS de la granja, la disponibilidad de la base de datos del broker y los puertos correspondientes; para la alta disponibilidad en el broker, compruebe Always On en SQL.
- Las sesiones no finalizan/se bloquean. Defina límites (tiempos de espera) para las sesiones activas/desconectadas en la pestaña «Sesión» de la colección.
Se requiere un acceso externo seguro. Implemente RD Gateway (HTTPS, políticas de acceso, certificado).