โดยค่าเริ่มต้น เมื่อผู้ใช้ปิดหน้าต่างเซสชัน RDP/RDS ในไคลเอ็นต์เทอร์มินัล (mstsc.exe
, RDCMan หรือเว็บไคลเอ็นต์ HTML5 ของเดสก์ท็อประยะไกล) เพียงคลิกเครื่องหมายกากบาทที่มุมบนขวาโดยไม่ต้องออกจากระบบ เซสชันของเขาจะเข้าสู่ ตัดการเชื่อมต่อ โหมด ในโหมดนี้ แอป ไฟล์ที่เปิดอยู่ และหน้าต่างทั้งหมดยังคงทำงานบนเซิร์ฟเวอร์เดสก์ท็อประยะไกลและใช้ทรัพยากร
ตามค่าเริ่มต้น เซสชัน RDP ของผู้ใช้ใน Windows อาจอยู่ในสถานะไม่เชื่อมต่อจนกว่าผู้ใช้หรือผู้ดูแลระบบจะยุติ หรือจนกว่าคอมพิวเตอร์จะรีสตาร์ท สะดวกมาก เนื่องจากผู้ใช้สามารถเชื่อมต่อกับเซสชันเดสก์ท็อประยะไกลเก่าของเขาและทำงานกับโปรแกรมที่กำลังทำงานอยู่หรือเปิดไฟล์ต่อไปได้
ในภาพหน้าจอต่อไปนี้ คุณจะเห็นว่าเซสชันผู้ใช้ที่ไม่ได้เชื่อมต่อบนเซิร์ฟเวอร์ RDS ที่ใช้ Windows Server 2016 กำลังใช้ RAM ของเซิร์ฟเวอร์ประมาณ 40% นอกจากนี้ เซสชันเหล่านี้อาจบล็อกไฟล์ที่เปิดอยู่บนเซิร์ฟเวอร์ไฟล์ของคุณ ทำให้เกิดปัญหาในการบันทึกข้อมูลในแอปที่ไม่ถูกต้อง โฟลเดอร์โปรไฟล์การโรมมิ่ง หรือบนดิสก์โปรไฟล์ผู้ใช้
การใช้ quser
คำสั่ง คุณสามารถดูได้เมื่อเริ่มเซสชัน RDP ของผู้ใช้ ไม่ได้ใช้งานนานเท่าใด และสถานะเซสชันปัจจุบัน
หากต้องการยุติเซสชัน RDP/RDS ที่ตัดการเชื่อมต่อโดยอัตโนมัติในช่วงเวลาที่กำหนด คุณต้องตั้งค่าการจำกัดเซสชัน (หมดเวลา) ให้ถูกต้อง
หากคุณใช้เซิร์ฟเวอร์ RDS คุณสามารถกำหนดค่าพารามิเตอร์การหมดเวลาของเซสชันได้ในการตั้งค่าการรวบรวม RDS บน เซสชัน แท็บ
ระบุช่วงเวลา หลังจากที่คุณต้องการกำจัดเซสชันเดสก์ท็อประยะไกลที่ไม่ได้เชื่อมต่อ ใน สิ้นสุดเซสชันที่ไม่ได้เชื่อมต่อ ตัวเลือก (โดยค่าเริ่มต้น ระยะเวลาเซสชันไม่จำกัด – ไม่เคย ). คุณยังสามารถตั้งเวลาสูงสุดของเซสชันที่ใช้งานอยู่ได้ (ขีดจำกัดของเซสชันที่ใช้งานอยู่ ) และสิ้นสุดเซสชันที่ไม่ได้ใช้งาน (ขีดจำกัดเซสชันที่ไม่ได้ใช้งาน ). การหมดเวลาของฮาร์ดเหล่านี้ใช้กับทุกเซสชันในคอลเล็กชัน RDS
คุณยังสามารถตั้งค่าขีดจำกัดของเซสชัน RDP ในคุณสมบัติของโลคัล (lusrmgr.msc
) หรือผู้ใช้โดเมน (dsa.msc
— ผู้ใช้ Active Directory และคอมพิวเตอร์)
ไม่ควรทำให้การหมดเวลาของเซสชัน RDP สั้นเกินไป มิฉะนั้น เซสชันของผู้ใช้จะสิ้นสุดลงเกือบจะทันทีหลังจากที่ไม่ได้ใช้งาน
ใน Windows Server 2012 R2/2016/2019 คุณสามารถตั้งค่าการหมดเวลาของเซสชัน RDP ได้โดยใช้นโยบายกลุ่ม คุณสามารถทำได้ในโปรแกรมแก้ไข GPO ของโดเมน (gpmc.msc
) หรือในตัวแก้ไขนโยบายกลุ่มภายใน (gpedit.msc
) บนเซิร์ฟเวอร์ RDS หรือไคลเอนต์ (หากคุณใช้รุ่นเดสก์ท็อป Windows เป็นเซิร์ฟเวอร์เทอร์มินัล)
การตั้งค่าการหมดเวลาของเซสชัน RDP จะอยู่ในส่วน GPO ต่อไปนี้ การกำหนดค่าคอมพิวเตอร์ -> นโยบาย -> เทมเพลตการดูแลระบบ -> คอมโพเนนต์ของ Windows -> บริการเดสก์ท็อประยะไกล -> โฮสต์เซสชันเดสก์ท็อประยะไกล -> การจำกัดเวลาของเซสชัน . มีการตั้งค่าระยะหมดเวลาเดสก์ท็อประยะไกลต่อไปนี้:
- กำหนดเวลาสำหรับเซสชันที่ไม่ได้เชื่อมต่อ
- ตั้งค่าการจำกัดเวลาสำหรับเซสชัน Remote Desktop Services ที่ทำงานอยู่แต่ไม่ได้ใช้งาน — นโยบายอนุญาตให้ยุติเซสชัน RDP ที่ไม่ได้ใช้งานซึ่งไม่มีการป้อนข้อมูลของผู้ใช้ (เช่น การเลื่อนเมาส์หรือการพิมพ์บางอย่างบนแป้นพิมพ์)
- ตั้งค่าการจำกัดเวลาสำหรับเซสชันบริการเดสก์ท็อประยะไกลที่ทำงานอยู่ — เป็นเวลาสูงสุดของเซสชัน RDP ใดๆ (แม้แต่เซสชันที่ใช้งานอยู่) หลังจากนั้นจะถูกตัดการเชื่อมต่อ
- สิ้นสุดเซสชันเมื่อถึงเวลาจำกัด — ตั้งเวลา หลังจากนั้นเซสชัน RDP จะถูกยกเลิก (ออกจากระบบ) แทนที่จะยกเลิกการเชื่อมต่อ
- กำหนดเวลาสำหรับการออกจากระบบเซสชัน RemoteApp
โดยค่าเริ่มต้น ตัวเลือกเหล่านี้ไม่ได้รับการกำหนดค่า หากต้องการยุติเซสชันผู้ใช้ RDP ที่ถูกตัดการเชื่อมต่อโดยอัตโนมัติใน 8 ชั่วโมง ให้เปิดใช้งาน ตั้งค่าการจำกัดเวลาสำหรับเซสชันที่ไม่ได้เชื่อมต่อ นโยบายและเลือก 8 ชั่วโมง ในรายการแบบเลื่อนลง
บันทึกการเปลี่ยนแปลงและอัปเดตการตั้งค่านโยบายกลุ่มบนโฮสต์ RD ของคุณ (gpupdate /force
). การตั้งค่าระยะหมดเวลาใหม่จะใช้กับเซสชัน RDP ใหม่เท่านั้น (คุณจะต้องสิ้นสุดเซสชัน RDS ปัจจุบันด้วยตนเอง)
- MaxDisconnectionTime
- MaxIdleTime
- MaxConnectionTime
- MaxDisconnectionTime
- RemoteAppLogoffTimeLimit
ใน Windows Server 2008 R2 คุณสามารถตั้งค่าการหมดเวลาของเซสชัน RDP โดยใช้คอนโซลพิเศษ:tsconfig.msc (การกำหนดค่าโฮสต์เซสชัน RD) การเปิดคอนโซลและคลิกขวา RDP-Tcp -> Properties ก็เพียงพอแล้ว การตั้งค่าการจำกัดเซสชันจะอยู่ใน เซสชัน แท็บ อย่างไรก็ตาม ไม่มีคอนโซลดังกล่าวใน Windows Server เวอร์ชันใหม่กว่า (แม้ว่าคุณสามารถคัดลอกไฟล์ tsadmin.msc และ tsconfig.msc ด้วยตนเอง และใช้คอนโซลเหล่านี้ใน Windows Server เวอร์ชันใหม่กว่าได้เช่นกัน)