Prerequisites:
Required ports for RDS Services
– UDP/TCP 135 ingress/egress
– UDP/TCP 137-139 ingress/egress
– TCP 445 ingress/egress
– TCP 49152-65535 egress
Main Steps in Installing RDS Services
# Import module
import-module remotedesktop
# New deployment
$connectionBroker='IRV-SERVER76'
$webAccessServer='AWS-SERVER23'
$sessionHost='IRV-SERVER77'
New-SessionDeployment -ConnectionBroker $connectionBroker -WebAccessServer $webAccessServer -SessionHost $sessionHost
# Adding more RDS Hosts
$rdsHost='IRV-SERVER78'
Add-RDServer -Server $rdsHost -Role RDS-RD-SERVER -ConnectionBroker $connectionBroker
# Add Licensing
$rdsLicenseServer='IRV-SERVER56'
Add-RDServer -Server $rdsLicenseServer -Role RDS-LICENSING -ConnectionBroker $connectionBroker
Set-RDLicenseConfiguration -LicenseServer $rdsLicenseServer -Mode PerUser -ConnectionBroker $connectionBroker
# Check licensing
Get-RDLicenseConfiguration
# Create RDS Collections
$collectionName='APP01Collection'
New-RDSessionCollection -CollectionName $collectionName -SessionHost $connectionBroker -CollectionDescription 'Remote Desktop Sessions for APP01' -ConnectionBroker $connectionBroker
# Publish an App - Note that this published Chrome will run as Local to the RDS Host (Intranet)
New-RDRemoteapp -Alias GoogleChrome -DisplayName GoogleChrome -FilePath "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" -ShowInWebAccess 1 -CollectionName $collectionName -ConnectionBroker $connectionBroker
Extraneous Commands
# Removing an RDS Host
Remove-RDServer -Server "IRV-TESTRDSHOST" -Role 'RDS-RD-SERVER' -ConnectionBroker $connectionBroker
# Adding an RDS Gateway
$rdsGateway='app01.hooli.com'
Add-RDServer -Server $rdsGateway -Role "RDS-GATEWAY" -ConnectionBroker $connectionBroker -GatewayExternalFqdn $rdsGateway
# Adding an RDS Virtualization Server
$rdsVirtualizationServer='virtualrds.hooli.com'
Add-RDServer -Server $rdsVirtualizationServer -Role "RDS-VIRTUALIZATION" -ConnectionBroker $connectionBroker -CreateVirtualSwitch
Manually install RDS Services Role on an individual Server
# Check if the Remote Desktop Session Host feature is available
Get-WindowsFeature | where name -Like “rds*”
Display Name Name Install State
------------ ---- -------------
[ ] Remote Desktop Connection Broker RDS-Connection-Broker Available
[ ] Remote Desktop Gateway RDS-Gateway Available
[ ] Remote Desktop Licensing RDS-Licensing Available
[X] Remote Desktop Session Host RDS-RD-Server Installed
[ ] Remote Desktop Virtualization Host RDS-Virtualization Available
[ ] Remote Desktop Web Access RDS-Web-Access Available
[ ] Remote Desktop Licensing Tools RDS-Licensing-UI Available
# Add the Remote Desktop Session Host feature to the server
Install-WindowsFeature RDS-RD-Server -IncludeManagementTools
# Add RDS-Licensing
Install-WindowsFeature RDS-Licensing,RDS-Licensing-UI
Check Licenses
$tsLicenseServer=$env:computername
Get-CIMInstance -computername $tsLicenseServer Win32_TSLicenseKeyPack `
-filter "TotalLicenses!=0"|?{$_.TypeAndModel -ne 'Built-in TS Per Device CAL'} | `
select-object -Property @{n='LicenseServer';e={$_.PSComputerName}}, `
TypeAndModel,TotalLicenses,IssuedLicenses,AvailableLicenses,ExpirationDate,ProductVersion
Sample Output:
LicenseServer : IRV-RDLICENSE02
TypeAndModel : RDS Per User CAL
TotalLicenses : 200
IssuedLicenses : 40
AvailableLicenses : 160
ExpirationDate : 12/31/2037 5:00:00 PM
ProductVersion : Windows Server 2019
Checking TS Licensing Clearinghouse
[IRV-RDSHost]: PS C:\Users\adminguy\Documents> get-item 'registry::HKLM\Software\Microsoft\TermServLicensing\lrwiz\Params'
Hive: HKLM\Software\Microsoft\TermServLicensing\lrwiz
Name Property
---- --------
Params (default) :
1.2.840.113549.1.9.1 :
dwBpAG4AZABvAHcAcwAtAGEAZABtAGkAbgBAAGkAbgB0AGUAcgBuAGUAdABiAHIA
YQBuAGQALgBjAG8AbQA=
2.5.4.10 :
TQBIACAAUwB1AGIAIABJACwAIABMAEwAQwAgAEQAQgBBACAASQBuAHQAZQByAG4A
ZQB0ACAAQgByAGEAbgBkAHMA
2.5.4.11 : SQBUAA==
2.5.4.13 : VQBTAA==
2.5.4.15 : RQBOAFQARQBSAFAAUgBJAFMARQA=
2.5.4.17 : OQAwADIANAA1AA==
2.5.4.3 : VwBpAG4AZABvAHcAcwA=
2.5.4.4 : QQBkAG0AaQBuAA==
2.5.4.6 : VQBuAGkAdABlAGQAIABTAHQAYQB0AGUAcwA=
2.5.4.7 : RQBsACAAUwBlAGcAdQBuAGQAbwA=
2.5.4.8 : QwBBAA==
2.5.4.9 :
OQAwADkAIABOACAAUABhAGMAaQBmAGkAYwAgAEMAbwBhAHMAdAAgAEgAdwB5ACwA
IABGAEwAIAAxADEA
ACTIVATIONMETHOD : MQA=
CH_EXTENSION : tlsonline\tlsext.dll
CH_PHONE_NO_LINK : https://activate.microsoft.com/
CH_RDLS_CONFIG_SERVER : rdls.blob.core.windows.net
CH_SERVER : clearinghouse.one.microsoft.com
LastRdlsConfigDownloadTime : {112, 173, 150, 162...}
LKPRC : 0
Param0 : {48, 130, 5, 237...}
Param1 : {}
Param2 : {48, 130, 18, 195...}
State : 0
WWW : https://activate.microsoft.com
Categories: