当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] 在 Windows 上配置 RDP/RDS 会话限制(超时)

作者:精品下载站 日期:2024-12-14 23:33:02 浏览:16 分类:玩电脑

在 Windows 上配置 RDP/RDS 会话限制(超时)


当用户关闭终端客户端中的 RDP/RDS 会话窗口时(

mstsc.exe

、RDCMan 或远程桌面 HTML5 Web 客户端)只需单击右上角的叉号而不注销,他的会话就会从活动模式变为断开模式。在此模式下,所有应用程序、打开的文档和窗口仍在远程桌面计算机上运行并消耗系统资源。

默认情况下,Windows 中用户的 RDP 会话可能会保持断开连接状态,直到被用户或管理员终止,或者直到计算机重新启动。这非常方便,因为用户可以随时连接到之前的远程桌面会话并继续使用正在运行的应用程序和打开文件。

以下屏幕截图显示,运行 Windows Server 2019 的 RDS 服务器上断开连接的用户会话消耗了大约 40% 的服务器 RAM。

[玩转系统] 在 Windows 上配置 RDP/RDS 会话限制(超时)

此外,这些会话可能会阻止文件服务器上打开的文件,导致在应用程序、漫游配置文件文件夹或用户配置文件磁盘上错误保存数据的问题。断开连接的 RDP 会话通常会在更改密码后(当 RDS 会话继续在用户的旧密码下运行时)导致域用户帐户锁定问题。

使用

quser

命令,您可以查看用户 RDP 会话的启动时间、空闲时间以及当前会话状态。

[玩转系统] 在 Windows 上配置 RDP/RDS 会话限制(超时)

您还可以使用 PowerShell 脚本显示有关 RDS 场中用户会话持续时间的信息(指定 RDS 连接代理服务器的 FQDN):

$connectionBrocker = “mun-rdscb.a-d.site"
Get-RDUserSession -ConnectionBroker $connectionBrocker |select-object -Property CollectionName, HostServer, DomainName, UserName, ServerIPAddress, CreateTime, DisconnectTime,  SessionState, IdleTime , SessionID , `
@{Name='SessionAge ([days.]hours:minutes)';Expression={ ((get-date ) - $_.CreateTime) } }

您可以配置远程桌面服务的活动、断开连接和空闲(无用户活动)会话的最长持续时间。

自动注销断开连接和空闲的远程桌面用户会话

要在指定时间内自动结束断开的RDP/RDS会话,您需要正确设置会话限制(超时)。

如果您在 Windows Server 上部署了远程桌面服务场,则可以在会话选项卡上的 RDS 收集设置中配置用户会话超时设置。

结束断开连接的会话选项中指定您想要终止断开连接的远程桌面会话的时间段(默认情况下,RDP 会话持续时间是无限的 - 从不)。您还可以设置活动用户会话的最长时间(活动会话限制)和结束空闲会话(空闲会话限制)。这些硬超时适用于 RDS 集合中的所有用户会话。

[玩转系统] 在 Windows 上配置 RDP/RDS 会话限制(超时)

在 Windows Server 2022/2019/2016/2012R2 中,您可以使用组策略设置 RDP 会话超时。您可以在域 GPO 编辑器中执行此操作(

gpmc.msc

)或在特定 RDS 主机上(或者在桌面版本的 Windows 上,如果您允许与其建立多个 RDP 连接)上的本地组策略编辑器 (gpedit.msc) 中。

RDP 会话超时设置位于以下 GPO 部分计算机配置 -> 策略 -> 管理模板 -> Windows 组件 -> 远程桌面服务 -> 远程桌面会话主机 -> 会话时间限制。可以使用以下远程桌面超时设置:

  • 设置断开连接的会话时间限制;

  • 为活动但空闲的远程桌面服务会话设置时间限制 - 该策略允许结束没有用户输入(例如移动鼠标或在键盘上输入内容)的空闲 RDP 会话;

  • 设置活动远程桌面服务会话的时间限制 - 这是任何 RDP 会话(即使是活动会话)的最长时间,之后将切换到断开连接状态;

  • 达到时间限制时结束会话 — 设置时间,在此之后 RDP 会话将被终止(注销)而不是断开连接;

  • 设置注销 RemoteApp 会话的时间限制。

[玩转系统] 在 Windows 上配置 RDP/RDS 会话限制(超时)

默认情况下,这些选项未配置。要在 8 小时内自动结束所有断开连接的 RDP 用户会话,请启用“为断开连接的会话设置时间限制”策略,并在下拉列表中选择8 小时

[玩转系统] 在 Windows 上配置 RDP/RDS 会话限制(超时)

保存更改并更新 RD 主机上的组策略设置 (

gpupdate /force

)。新的超时设置将仅应用于新的 RDP 会话(您必须手动结束 RDSH 上的当前用户会话)。

GPO 设置优先于 RDS 集合中的超时设置。

您可以在用户 GPO 部分找到相同的 RDP 超时设置:用户配置 -> 管理模板 -> Windows 组件。使用用户部分的策略,您可以更灵活地配置用户组,对 RDP 会话的持续时间进行不同的限制。

您还可以通过注册表设置 RDP 会话时间限制。 HKLM\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services 注册表项中的以下 DWORD 参数对应于上述组策略选项:

  • 最大断开时间

  • 最大空闲时间

  • 最大连接时间

  • 最大断开时间

  • 远程应用程序注销时间限制

例如,要将断开连接的 RDP 会话的最大持续时间设置为 15 分钟(90000 毫秒),您可以使用以下 PowerShell 命令更改注册表参数:

Set-ItemProperty "HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services" -Name MaxDisconnectionTime -Type 'DWord' -Value 900000

您还可以在本地 (

lusrmgr.msc

) 或域用户 (

dsa.msc

— Active Directory 用户和计算机控制台)。此处提供以下选项:

  • 结束断开连接的会话;

  • 活动会话限制;

  • 空闲会话限制;

  • 当达到会话限制或连接中断时:“断开会话”或“结束会话”;

  • 允许重新连接:“从任何客户端”或“仅从原始客户端”。

[玩转系统] 在 Windows 上配置 RDP/RDS 会话限制(超时)

您不应将 RDP 会话超时设置得太短,否则,用户会话在变为非活动状态后几乎会立即结束。

如果您部署了 RD 网关服务器用于远程访问 RDS 主机,则可以为通过 RDGW 连接的用户配置单独的超时(打开连接授权策略并转到超时选项卡)。

[玩转系统] 在 Windows 上配置 RDP/RDS 会话限制(超时)

在 Windows Server 2008 R2 中,您还可以使用特殊的 tsconfig.msc(RD 会话主机配置)控制台设置 RDP 会话超时。打开控制台并右键单击 RDP-Tcp -> 属性就足够了。会话超时限制位于会话选项卡上。但是,较新的 Windows Server 版本中没有此类控制台(尽管您也可以手动复制 tsadmin.msc 和 tsconfig.msc 文件并在较新的 Windows Server 版本上使用这些控制台)。

[玩转系统] 在 Windows 上配置 RDP/RDS 会话限制(超时)

远程桌面会话闲置超过其时间限制

配置 RDS 超时后,用户在断开空闲会话之前将看到以下警告:

Idle timer expired
Session has been idle over its time limit.
It will be disconnected in 2 minutes.
Press any key to continue the session.

[玩转系统] 在 Windows 上配置 RDP/RDS 会话限制(超时)

在用户断开连接之前,事件 ID 26 会记录在系统事件查看器中。

了解有关 RDP 连接日志的更多信息。

[玩转系统] 在 Windows 上配置 RDP/RDS 会话限制(超时)

您可以通过在 WMI 类 Win32_TSSessionSettings 中设置 EnableTimeoutWarning=0 来禁用此警告。

Set-WmiInstance -Path "\localhost\root\CIMV2\TerminalServices:Win32_TSSessionSetting.TerminalName='RDP-Tcp'" -Argument @{EnableTimeoutWarning=0}

现在,当 Windows 自动结束空闲 RDP 会话时,用户将从 RDP 客户端收到以下消息:

Your Remote Desktop Services session ended because the remote computer didn’t receive any input from you.

[玩转系统] 在 Windows 上配置 RDP/RDS 会话限制(超时)

在某些情况下,您可能会在 RDP 客户端中遇到以下错误:

Your Remote Desktop Services session has ended. Another user connected to the remote computer, so your connection was lost. Try connecting again, or contact your network administrator.

[玩转系统] 在 Windows 上配置 RDP/RDS 会话限制(超时)

这意味着,当计算机上同时进行的 RDP 会话数量受到限制连接数参数限制时(例如,桌面 Windows 版本上只有一个远程会话可用),其他人就会通过 RDP 登录计算机。或者您已从新计算机登录到 RDP 主机。

您可以使用 GPO 选项将远程桌面服务用户限制到单个远程桌面服务会话=禁用(在计算机配置 -> 管理模板 -> Windows 组件 -> 远程桌面服务 -> 远程桌面会话主机 -> 连接下)允许同一用户帐户下与 RDP 主机的多个连接。

[玩转系统] 在 Windows 上配置 RDP/RDS 会话限制(超时)

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯