Computer >> คอมพิวเตอร์ >  >> ระบบ >> Windows Server

เปลี่ยนรหัสผ่านผู้ใช้ในเซสชัน RDP บน Windows

ในบทความนี้ เราจะแสดงวิธีเปลี่ยนรหัสผ่านผู้ใช้ในเซสชัน RDP บนคอมพิวเตอร์ Windows ระยะไกล ในฐานะโฮสต์ระยะไกล คุณอาจมี Windows Server ที่มีบทบาทบริการเดสก์ท็อประยะไกล (RDSH) ที่กำหนดค่าไว้ หรืออนุญาตให้ใช้เวิร์กสเตชัน Windows 10 ที่มีการเชื่อมต่อ RDP อย่างน้อยหนึ่งรายการ

ปัญหาหลักที่ผู้ใช้พบคือ คุณไม่สามารถเปิดกล่องโต้ตอบการเปลี่ยนรหัสผ่านมาตรฐานโดยใช้ Ctrl + Alt + Delete คีย์ผสมในเซสชันเดสก์ท็อประยะไกล (RDP) ทางลัดนี้จะไม่ส่งผ่านไปยังเซสชัน RDP เนื่องจากทำงานบนระบบปฏิบัติการในพื้นที่ของคุณ

ใน Windows Server 2003/2008 คุณสามารถเปลี่ยนรหัสผ่านผู้ใช้ใน RDP ได้โดยคลิกปุ่มเริ่มและเลือก ความปลอดภัยของ Windows -> เปลี่ยนรหัสผ่าน .

เปลี่ยนรหัสผ่านผู้ใช้ในเซสชัน RDP บน Windows

ในเวอร์ชันที่ใหม่กว่า รวมถึง Windows Server 2016/2019/2022 และ Windows 10/11 จะไม่มีรายการความปลอดภัยของ Windows ในเมนูเริ่ม ดังนั้นจึงใช้วิธีนี้ในการเปลี่ยนรหัสผ่านของผู้ใช้ไม่ได้

สารบัญ:

  • เปลี่ยนรหัสผ่านผู้ใช้ใน RDP ด้วย CTRL + ALT + END
  • การเปลี่ยนรหัสผ่านโดยใช้แป้นพิมพ์บนหน้าจอ
  • สคริปต์ VBS/PowerShell เพื่อเปลี่ยนรหัสผ่านในเซสชัน RDP
  • การเปลี่ยนรหัสผ่านผ่าน Remote Desktop Web Access (RDWEB)
  • CredSSP NLA &การเปลี่ยนรหัสผ่านใน RDP

เปลี่ยนรหัสผ่านผู้ใช้ใน RDP ด้วย CTRL + ALT + END

ใน Windows เวอร์ชันปัจจุบัน คุณต้องใช้ Ctrl + Alt + End คีย์ผสมเพื่อเปิดกล่องโต้ตอบความปลอดภัยของ Windows ในเซสชัน RDP ทางลัดจะเหมือนกับ Ctrl + Alt + Delete แต่ใช้งานได้ในหน้าต่าง RDP เท่านั้น เลือก เปลี่ยนรหัสผ่าน ในเมนู

เปลี่ยนรหัสผ่านผู้ใช้ในเซสชัน RDP บน Windows

ตอนนี้คุณสามารถเปลี่ยนรหัสผ่านของคุณในกล่องโต้ตอบมาตรฐาน (ป้อนรหัสผ่านปัจจุบันของคุณและตั้งรหัสผ่านใหม่สองครั้ง) เปลี่ยนรหัสผ่านผู้ใช้ในเซสชัน RDP บน Windows

การเปลี่ยนรหัสผ่านโดยใช้แป้นพิมพ์บนหน้าจอ

หากคุณเชื่อมต่อกับเดสก์ท็อประยะไกลของโฮสต์ Windows ผ่านเซสชัน RDP คุณจะไม่สามารถใช้ CTRL+ALT+END เพื่อเปลี่ยนรหัสผ่านของผู้ใช้ได้ หน้าต่าง RDP แรกจะสกัดกั้นแป้นพิมพ์ลัด ในกรณีเหล่านี้ คุณสามารถใช้แป้นพิมพ์บนหน้าจอ Windows ในตัวเพื่อเปลี่ยนรหัสผ่านของผู้ใช้ได้

  1. เรียกใช้แป้นพิมพ์บนหน้าจอในเซสชัน RDP เป้าหมาย (ทำได้ง่ายกว่าโดยพิมพ์ osk.exe ในเมนูเริ่ม); เปลี่ยนรหัสผ่านผู้ใช้ในเซสชัน RDP บน Windows
  2. คุณจะเห็นแป้นพิมพ์บนหน้าจอ
  3. กด CTRL+ALT บนแป้นพิมพ์จริง (ในเครื่อง) ของคุณ (ควรแสดงบนหน้าจอ) จากนั้นคลิก Del ปุ่มบนแป้นพิมพ์บนหน้าจอ เปลี่ยนรหัสผ่านผู้ใช้ในเซสชัน RDP บน Windows
  4. ดังนั้น การกดแป้น Ctrl+Alt+Del จะถูกส่งไปยังเซสชัน RDP ระยะไกล และกล่องโต้ตอบความปลอดภัยของ Windows มาตรฐานจะปรากฏขึ้นซึ่งคุณสามารถเปลี่ยนรหัสผ่านได้
โปรดจำไว้ว่าเมื่อคุณเปลี่ยนรหัสผ่านของผู้ใช้ รหัสผ่านจะต้องเป็นไปตามข้อกำหนดนโยบายรหัสผ่านในพื้นที่หรือโดเมนของคุณ

หากรหัสผ่านใหม่ของคุณไม่ตรงตาม คุณจะเห็นข้อความด้านล่าง:

Unable to update the password. The value provided for the new password does not meet the length, complexity, or history requirements of the domain.

เปลี่ยนรหัสผ่านผู้ใช้ในเซสชัน RDP บน Windows

โปรดทราบว่าหาก อายุรหัสผ่านขั้นต่ำ ได้รับการกำหนดค่าในนโยบายโดเมน (หรือในนโยบายรหัสผ่านแบบละเอียด – PSO) ซึ่งอาจป้องกันไม่ให้ผู้ใช้เปลี่ยนรหัสผ่านบ่อยกว่าที่ระบุไว้ในการตั้งค่า GPO
คุณสามารถดูได้เมื่อรหัสผ่านของผู้ใช้ หมดอายุโดยใช้ PowerShell:

Get-ADUser -Identity jsmith -Properties msDS-UserPasswordExpiryTimeComputed | select-object @{Name="ExpirationDate";Expression= {[datetime]::FromFileTime($_."msDS-UserPasswordExpiryTimeComputed") }}

สคริปต์ VBS/PowerShell เพื่อเปลี่ยนรหัสผ่านในเซสชัน RDP

คุณสามารถเรียกกล่องโต้ตอบความปลอดภัยของ Windows ในเซสชัน RDP โดยใช้เครื่องมือ Windows ในตัว:VBScript, PowerShell หรือทางลัดของ Shell

ตัวอย่างเช่น สร้าง WindowsSecurity.vbs ไฟล์ข้อความที่มีรหัส VBScript ต่อไปนี้บนเดสก์ท็อปของคุณ:

set objShell = CreateObject("shell.application")
objshell.WindowsSecurity

หากคุณดับเบิลคลิกที่ไฟล์ VBS คุณจะเห็นรูปแบบมาตรฐานสำหรับเปลี่ยนรหัสผ่านของคุณ

คุณสามารถวางไฟล์ VBS นี้บนเดสก์ท็อปที่ใช้ร่วมกันบนโฮสต์ RDS ของคุณ (%SystemDrive%\Users\Public\Desktop\ ) หรือคัดลอกไฟล์ไปยังเดสก์ท็อปของผู้ใช้โดยใช้ GPO

เปลี่ยนรหัสผ่านผู้ใช้ในเซสชัน RDP บน Windows

ในทำนองเดียวกัน คุณสามารถเปิดหน้าต่างเปลี่ยนรหัสผ่านจาก PowerShell ได้ ใช้คำสั่งด้านล่าง:

New-Object -COM Shell.Application).WindowsSecurity()

เปลี่ยนรหัสผ่านผู้ใช้ในเซสชัน RDP บน Windows

มีตัวเลือกในการสร้างทางลัด Windows File Explorer ด้วยลิงก์ต่อไปนี้:

C:\Windows\explorer.exe shell:::{2559a1f2-21d7-11d4-bdaf-00c04f60b9f0}

เปลี่ยนรหัสผ่านผู้ใช้ในเซสชัน RDP บน Windows

การเปลี่ยนรหัสผ่านผ่าน Remote Desktop Web Access (RDWEB)

หากคุณเข้าถึงเซิร์ฟเวอร์ RDP ของคุณผ่านโฮสต์ด้วย การเข้าถึงเว็บเดสก์ท็อประยะไกล บทบาท (RDWA) คุณสามารถอนุญาตให้เปลี่ยนรหัสผ่านที่หมดอายุแล้วในหน้าเข้าสู่ระบบ RDWA (อธิบายไว้โดยละเอียดที่นี่)
เปลี่ยนรหัสผ่านผู้ใช้ในเซสชัน RDP บน Windows

CredSSP NLA &การเปลี่ยนรหัสผ่านใน RDP

มีคุณลักษณะที่สำคัญในการเปลี่ยนรหัสผ่านผู้ใช้ที่หมดอายุใน RDP ที่เกี่ยวข้องกับ การตรวจสอบสิทธิ์ระดับเครือข่าย (NLA) และผู้ให้บริการสนับสนุนการรักษาความปลอดภัยข้อมูลประจำตัว (CredSSP) โปรโตคอล ตามค่าเริ่มต้น CredSSP ที่มี NLA สำหรับ RDP จะเปิดใช้งานบน Windows Server 2012/Windows 8 และใหม่กว่า NLA ปกป้องเซิร์ฟเวอร์ RDP โดยการตรวจสอบสิทธิ์ผู้ใช้ก่อนสร้างเซสชัน RDP กับโฮสต์

หากรหัสผ่านของผู้ใช้หมดอายุหรือผู้ดูแลระบบ AD ได้เปิดใช้งานตัวเลือก userAccountControl “ผู้ใช้ต้องเปลี่ยนรหัสผ่านเมื่อเข้าสู่ระบบครั้งถัดไป ” (โดยส่วนใหญ่จะเปิดใช้งานสำหรับบัญชี AD ใหม่) คุณจะเห็นข้อผิดพลาดต่อไปนี้เมื่อเข้าสู่ระบบโดยใช้ RDP:

Remote Desktop Connection

You must change your password before logging on the first time. Please update your password or contact your system administrator or technical support.

เปลี่ยนรหัสผ่านผู้ใช้ในเซสชัน RDP บน Windows

ส่งผลให้ผู้ใช้ไม่สามารถเชื่อมต่อกับเซิร์ฟเวอร์โดยใช้ RDP และเปลี่ยนรหัสผ่านได้

ในกรณีนี้ หากต้องการให้ผู้ใช้ระยะไกลเปลี่ยนรหัสผ่านได้ คุณสามารถ:

  • กำหนดค่าบทบาท RDWA ด้วยหน้าเปลี่ยนรหัสผ่านตามที่อธิบายไว้ข้างต้น
  • ปิดใช้งาน NLA บนโฮสต์ RDP ของคุณ (ไม่แนะนำ!!! เนื่องจากจะลดระดับความปลอดภัยของการเชื่อมต่อ RDP ลงอย่างมาก) และใช้ .rdp ไฟล์ที่มีบรรทัด enablecredsspsupport:i:0 สำหรับการเชื่อมต่อ
  • ใช้โฮสต์ RDP แยกต่างหากเพื่อเปลี่ยนรหัสผ่านของผู้ใช้ คุณไม่จำเป็นต้องติดตั้งบทบาทโฮสต์เซสชันเดสก์ท็อประยะไกลบนโฮสต์นี้หรือเพิ่มผู้ใช้ในกลุ่มผู้ใช้เดสก์ท็อประยะไกลภายในเครื่อง แต่คุณต้องปิดใช้งาน NLA จากนั้นผู้ใช้จะสามารถเปลี่ยนรหัสผ่านได้ แต่จะไม่สามารถเข้าสู่ระบบเซิร์ฟเวอร์ผ่าน RDP ได้ เปลี่ยนรหัสผ่านผู้ใช้ในเซสชัน RDP บน Windows
  • ผู้ใช้สามารถเปลี่ยนรหัสผ่านจากระยะไกลโดยใช้ PowerShell (หากมีการเข้าถึงเครือข่ายไปยังตัวควบคุมโดเมน)