Proper SSL certificates are essential for secure RDS access, especially when enabling external connectivity. Configure certificates for all RDS roles that require encrypted communications.
Navigate to Remote Desktop Services > Overview > Tasks > Edit Deployment Properties > Certificates. You'll need certificates for RD Connection Broker, RD Web Access, and RD Gateway (if deployed).
For internal deployments, you can create self-signed certificates, but production environments should use certificates from a trusted Certificate Authority:
# Create self-signed certificate for testing
$cert = New-SelfSignedCertificate -DnsName "contoso-wa1.domain.local" -CertStoreLocation "Cert:\LocalMachine\My"
# Export certificate with private key
$pwd = ConvertTo-SecureString -String "P@ssw0rd123" -Force -AsPlainText
Export-PfxCertificate -Cert $cert -FilePath "C:\Temp\RDSCert.pfx" -Password $pwd
Apply certificates to each role:
- RD Connection Broker: Use internal FQDN for SSO and Publishing certificates
- RD Web Access: Use external FQDN if accessible from internet
- RD Gateway: Must use external FQDN matching public DNS
For each certificate, click Create new certificate, specify the appropriate FQDN, and save the certificate to a secure location. Import the certificate on the target server and apply it through the deployment properties.
Warning: Certificate subject names must exactly match the FQDNs users will use to connect. Mismatched names cause connection failures and security warnings.
Verification: Test certificate installation by running Get-ChildItem -Path Cert:\LocalMachine\My on each server to confirm certificates are properly installed.