需要Windows Server服务器 以下安装通过powershell命令安装,只支持Windows Server 2012及以上版本(2012,2012r2,2016,2019,2022)
Install-WindowsFeature -Name AD-Domain-Services -IncludeManagementTools
该步骤安装AD域服务及相关的管理工具
Install-ADDSForest -CreateDnsDelegation:$false -DatabasePath 'C:\\Windows\\NTDS' -DomainName 'example.local' -DomainNetbiosName 'example' -InstallDns:$true -LogPath 'C:\\Windows\\NTDS' -NoRebootOnCompletion:$false -SysvolPath 'C:\\Windows\\SYSVOL' -Force:$true -SafeModeAdministratorPassword (ConvertTo-SecureString 'EXample123' -AsPlainText -Force)
这一步将普通的AD主机升级为域控主机,域名为example.local
DomainNetbiosName指域的NetBiosName,必须是 DomainName的前部分,
SafeModeAdministratorPassword是域控的安全密码,在卸载域控和关键操作时需要用到该密码,该密码必须为强密码。
RemoteApp的搭建是支持集群搭建的,域控主机只需要一台,其余全部加入到该域中即可:
即如果需要搭建5台集群的RemoteApp,则只需要一台主机执行该命令提升为域控主机,其他4台安装AD域服务然后加入至域控即可。
Install-Windowsfeature RDS-RD-Server,RDS-Connection-Broker,RDS-Licensing,RDS-Licensing-UI,RSAT-RDS-Tools,RSAT-RDS-Licensing-Diagnosis-UI,Remote-Desktop-Services
该步骤安装远程桌面服务及相关的授权,授权诊断,连接代理,网关等一系列服务。这是RemoteApp最重要的服务 Terminal Service,这个服务涉及会话连接等关键,该服务断开则RemoteApp的会话将直接断开。
[System.Net.DNS]::GetHostByName('') | ForEach-Object { $_.HostName } 是通过powershell获取当前执行主机HostName(主机名)的语句New-RDSessionDeployment -ConnectionBroker ([System.Net.DNS]::GetHostByName('') | ForEach-Object { $_.HostName }) -SessionHost ([System.Net.DNS]::GetHostByName('') | ForEach-Object { $_.HostName })
New-RDSessionCollection -CollectionName 'SessionCollection' -SessionHost ([System.Net.DNS]::GetHostByName('') | ForEach-Object { $_.HostName }) -CollectionDescription 'SessionCollection'
以上两步将允许多用户共同访问。正常我们平常使用的mstsc,如果有两个用户同时连接或一个用户打开了两个相同的连接,先连接的会话将直接被退出。上面两步完成后,将允许多用户通过同一个账号同时远程至服务器或者一个用户远程多个相同连接(无论RemoteApp还是RDS会话)
Add-RDServer -Server ([System.Net.DNS]::GetHostByName('') | ForEach-Object { $_.HostName }) -Role 'RDS-Licensing'
Add-RDServer -Server ([System.Net.DNS]::GetHostByName('') | ForEach-Object { $_.HostName }) -Role 'RDS-WEB-ACCESS
RemoteApp和RDS是需要授权的,授权需要绑定机器,这两步是将当前机器加入到授权中,授权成功则该机器有点数使用RemoteApp或RDS。
该操作无法使用powershell,需要通过图形化完成,具体操作为见
授权并激活远程桌面服务
修改注册表
这两步一般都是使用的企业协议激活,企业协议激活正规流程需要向Microsoft申请协议号,激活的远程桌面服务需遵守Microsoft软件许可条款。
在正式使用RemoteApp时,会有一些特殊的需求比如usb通道重定向,显卡透传,声音透传功能等等,这些都需要通过修改注册表/组策略来开启/关闭。由于注册表/组策略都是微软直接提供的功能,实际rdp协议也闭源,无法修改底层代码,所以如果效果不佳,其实比较难通过代码来调优。
远程桌面会话主机配置
安装Windows Server2019应用服务器