Windows 終端服務預設僅允許 2 個並發連接。當使用者以「關閉視窗」而非「登出」方式結束遠程桌面會話時,會話實際上仍保留在伺服器端,持續佔用連接名額。當達到上限時,新連線將被拒絕並提示「超出最大連接數」。
請務必透過「開始 → 登出」或 Ctrl + Alt + Del → 登出 正確結束會話,避免直接關閉遠程桌面視窗。
可透過終端服務配置或群組原理設定,讓斷線會話在指定時間後自動結束:
tscc.msc → 連線 → 右鍵 RDP-Tcp → 內容 → 工作階段 → 勾選「覆寫使用者設定」 → 「結束已斷開的會話」設為 30 分鐘。gpedit.msc → 電腦設定 → 管理範本 → Windows 元件 → 終端服務 → 工作階段 → 「為斷開的會話設定時間限制」 → 啟用並設定時間。gpedit.msc → 電腦設定 → 管理範本 → Windows 元件 → 終端服務 → 「限制連接數量」 → 啟用並輸入允許的最大連線數。Windows 2000/2003 提供兩種模式:
切換方式:控制台 → 新增/移除程式 → 新增/移除 Windows 元件 → 終端服務 → 選擇「應用程式伺服器」。
query user 查看會話 ID。logoff <會話 ID> 強制登出佔用連線的會話(通常 ID 1、12 等為遠端會話)。xp_cmdshell 執行命令若 Telnet 不可用,且具備 xp_cmdshell 權限,可在 SQL 查詢視窗執行:
master.dbo.xp_cmdshell 'query user'
master.dbo.xp_cmdshell 'logoff 1'
以查詢並登出目標會話。
長期解決應以「正確登出」+「設定斷線會話自動清理」+「依需求調整最大連線數」為主;緊急時可用 Telnet 或 SQL 命令強制釋放。建議生產環境改用應用程式伺服器模式並配備授權伺服器,徹底避免 2 連線限制。