GPResult.exe เครื่องมือบรรทัดคำสั่งใช้เพื่อรับ Resultant Set of Policy (RSoP) ที่ใช้กับผู้ใช้และ/หรือคอมพิวเตอร์ในโดเมน Active Directory GPResult ช่วยให้คุณแสดงรายการนโยบายโดเมน (GPO) ที่ใช้กับคอมพิวเตอร์และผู้ใช้ การตั้งค่านโยบาย เวลาประมวลผล GPO และข้อผิดพลาด เป็นเครื่องมือผู้ดูแลระบบที่ใช้บ่อยที่สุดในการวิเคราะห์การตั้งค่าและการแก้ไขปัญหานโยบายกลุ่มใน Windows
ในบทความนี้ เราจะมาดูวิธีใช้คำสั่ง GPResult เพื่อวินิจฉัย แก้จุดบกพร่อง และ วิเคราะห์การตั้งค่านโยบายกลุ่มที่ใช้กับ Windows ในโดเมน Active Directory
วิธีใช้คำสั่งผลลัพธ์ของนโยบายกลุ่ม (GPResult.exe)
คุณต้องเรียกใช้คำสั่ง GPResult บนคอมพิวเตอร์ที่คุณต้องการตรวจสอบแอปพลิเคชันของนโยบายกลุ่ม ไวยากรณ์สำหรับ GPResult คือ:
GPRESULT [/S system [/U username [/P [password]]]] [/SCOPE scope] [/USER targetusername] [/R | /V | /Z] [(/X | /H) <filename> [/F]]
ในการรับข้อมูลโดยละเอียดเกี่ยวกับนโยบายกลุ่มที่ใช้กับผู้ใช้หรือคอมพิวเตอร์เฉพาะ ตลอดจนการตั้งค่าอื่นๆ ที่เกี่ยวข้องกับโครงสร้างพื้นฐาน GPO (การตั้งค่านโยบาย GPO ที่เป็นผลลัพธ์ RsoP) ให้เปิดพร้อมท์คำสั่งและเรียกใช้คำสั่งนี้:Gpresult /r
ผลลัพธ์ของคำสั่งนี้แบ่งออกเป็นสองส่วน:
- การตั้งค่าคอมพิวเตอร์ – ส่วนนี้มีข้อมูลเกี่ยวกับวัตถุ GP ที่ใช้กับคอมพิวเตอร์ (เป็นวัตถุ Active Directory)
- การตั้งค่าผู้ใช้ – นี่คือส่วนนโยบายผู้ใช้ (นโยบายที่ใช้กับบัญชีของผู้ใช้ AD)
มาสรุปการตั้งค่า/ส่วนพื้นฐานในผลลัพธ์ GPR ที่ผู้ดูแลระบบอาจสนใจกัน
- ชื่อไซต์ – เป็นชื่อของไซต์ AD ที่คอมพิวเตอร์ตั้งอยู่
- ซีเอ็น – ชื่อผู้ใช้/ชื่อคอมพิวเตอร์ตามรูปแบบบัญญัติซึ่งสร้างข้อมูล RSoP
- ใช้นโยบายกลุ่มครั้งล่าสุด – คือเวลาที่ใช้การตั้งค่านโยบายกลุ่มครั้งล่าสุด (อัปเดต)
- ใช้นโยบายกลุ่มจาก – เป็นชื่อตัวควบคุมโดเมนที่ดาวน์โหลด GPO เวอร์ชันล่าสุด
- ชื่อโดเมนและประเภทโดเมน – เป็นชื่อและหมายเลขเวอร์ชันของสคีมาโดเมน Active Directory
- ใช้วัตถุนโยบายกลุ่ม – เป็นรายการของ GPO ที่นำไปใช้
- ไม่ได้ใช้ GPO ต่อไปนี้เนื่องจากถูกกรองออก
- ผู้ใช้เป็นส่วนหนึ่งของกลุ่มความปลอดภัยต่อไปนี้ – รายชื่อกลุ่มความปลอดภัยของโดเมนที่ผู้ใช้เป็นสมาชิก
ในตัวอย่างนี้ คุณจะเห็นว่ามีการใช้นโยบายกลุ่ม 4 กลุ่มกับวัตถุผู้ใช้
- ปิดใช้งานข้อมูลรับรองที่แคชไว้
- รายการค้นหาส่วนต่อท้าย DNS;
- เปิดใช้งาน Windows Firewall;
- นโยบายโดเมนเริ่มต้น
รายงานจะประกอบด้วยข้อมูลเกี่ยวกับการตั้งค่านโยบายท้องถิ่นที่กำหนดค่าผ่าน Local Group Policy Editor (gpedit.msc
)
คุณสามารถใช้ตัวเลือก /scope เพื่อแสดงเฉพาะผู้ใช้หรือนโยบายคอมพิวเตอร์:gpresult /r /scope:user
หรือเฉพาะนโยบายคอมพิวเตอร์ที่ใช้:gpresult /r /scope:computer
หากคุณพยายามรับรายการ GPO ที่ใช้กับวัตถุคอมพิวเตอร์ภายใต้บัญชีผู้ใช้ที่ไม่ใช่ผู้ดูแลระบบ คำสั่ง gpresult จะส่งคืนข้อผิดพลาดการปฏิเสธการเข้าถึง:gpresult /r /scope:computer
ERROR: Access Denied.
เพื่อความสะดวกในการแยกวิเคราะห์และวิเคราะห์ข้อมูล RSOP คุณสามารถเปลี่ยนเส้นทางผลลัพธ์ Gpresult ไปยังคลิปบอร์ด:Gpresult /r |clip
หรือไฟล์ข้อความ:Gpresult /r > c:\ps\gpresult.txt
หากต้องการแสดงข้อมูล RSoP ที่มีรายละเอียดมากขึ้น คุณต้องเพิ่ม /z คีย์:Gpresult /r /z
ตัวอย่างเช่น ภาพหน้าจอแสดงการตั้งค่านโยบายรหัสผ่านโดเมนที่ใช้กับคอมพิวเตอร์
การส่งออกรายงาน RSoP เป็น HTML ด้วย GPResult
GPResult ช่วยให้คุณสร้างรายงาน HTML เกี่ยวกับนโยบายผลลัพธ์ที่ใช้ (มีให้ใน Windows 7 และใหม่กว่า) รายงานนี้มีข้อมูลโดยละเอียดเกี่ยวกับการตั้งค่าระบบทั้งหมดที่กำหนดโดยนโยบายกลุ่มและชื่อของ GPO ที่ตั้งค่าไว้ รายงาน gpresult HTML มีโครงสร้างคล้ายกับ การตั้งค่า แท็บในคอนโซลการจัดการนโยบายกลุ่ม (gpmc.msc
). คุณสามารถสร้างรายงาน RSoP HTML ได้โดยใช้คำสั่ง gpresult ต่อไปนี้:GPResult /h c:\PS\gpo-report.html /f
หากคุณไม่ได้ระบุพาธแบบเต็มไปยังไฟล์ HTML รายงาน HTML ของ gpresult จะถูกบันทึกไว้ใน %WINDIR%\system32
โฟลเดอร์
หากต้องการสร้างรายงานและเปิดในเบราว์เซอร์โดยอัตโนมัติ ให้เรียกใช้คำสั่งต่อไปนี้:GPResult /h GPResult.html & GPResult.html
รายงาน gpresult HTML มีข้อมูลที่เป็นประโยชน์ค่อนข้างมาก:คุณสามารถเห็น GPO ใช้ข้อผิดพลาด เวลาในการประมวลผล (เป็นมิลลิวินาที) สำหรับนโยบายเฉพาะและ CSE (ในรายละเอียดคอมพิวเตอร์ -> ส่วนสถานะส่วนประกอบ) สิ่งนี้มีประโยชน์เมื่อคุณต้องการทำความเข้าใจว่าทำไมการประมวลผล GPO จึงใช้เวลานาน
ตัวอย่างเช่น ในภาพหน้าจอด้านบน คุณจะเห็นว่า E บังคับประวัติรหัสผ่าน นโยบาย ด้วยการตั้งค่า “จำรหัสผ่าน 24 รายการ” ถูกนำไปใช้โดยนโยบายโดเมนเริ่มต้น (Winning GPO คอลัมน์)
รายงาน HTML ช่วยให้คุณสามารถนำเสนอชุดผลลัพธ์ของ GPO ของคอมพิวเตอร์ในรูปแบบกราฟิกที่สะดวก
GPResult:รับข้อมูล RSOP จากคอมพิวเตอร์ระยะไกล
GPResult สามารถรับชุดนโยบายที่เป็นผลลัพธ์จากคอมพิวเตอร์ระยะไกลได้เช่นกันโดยไม่จำเป็นต้องเข้าสู่ระบบในเครื่องหรือผ่าน RDP ไปยังอุปกรณ์ระยะไกลGPResult /s remote-pc-name1 /r
คุณสามารถระบุชื่อผู้ใช้และรหัสผ่านเพื่อเชื่อมต่อกับคอมพิวเตอร์ระยะไกลโดยใช้ตัวเลือก gpresult:
gpresult /R /S wks2b21c /scope user /U corp\jsmith /P myPaSSw0rd1!
ถ้าคุณไม่ต้องการให้รหัสผ่านของคุณถูกบันทึกไว้ในประวัติคำสั่ง PowerShell คุณสามารถถามรหัสผ่านแบบโต้ตอบได้:
gpresult /R /S wks2b21c /scope user /U corp\jsmith /P
ในทำนองเดียวกัน คุณสามารถรวบรวมข้อมูลจากนโยบายผู้ใช้และคอมพิวเตอร์ได้จากระยะไกล
หากคุณไม่ทราบชื่อของผู้ใช้ที่เข้าสู่ระบบคอมพิวเตอร์ระยะไกล คุณจะได้รับชื่อผู้ใช้ดังนี้:
qwinsta /SERVER:wks2b21c
Get-GPResultantSetOfPolicy -user jsmith -computer corp\wks2b21c -reporttype html -path c:\ps\gpo_rsop_report.html
GPResult:ผู้ใช้ไม่มีข้อมูล RSoP
เมื่อเปิดใช้งาน UAC และใช้ GPResult ในโหมดที่ไม่ได้ยกระดับ ระบบจะแสดงเฉพาะส่วนการตั้งค่าผู้ใช้ของนโยบายกลุ่มเท่านั้น หากคุณต้องการให้แสดงทั้งสองส่วน (การตั้งค่าผู้ใช้และการตั้งค่าคอมพิวเตอร์) คำสั่งจะต้องทำงานในพรอมต์คำสั่งที่มีสิทธิ์ของผู้ดูแลระบบ
หากมีการเรียกใช้พรอมต์คำสั่งที่ยกระดับในนามของบัญชีที่แตกต่างจากผู้ใช้ปัจจุบัน เครื่องมือจะแสดงคำเตือน:ข้อมูล:ผู้ใช้ “โดเมน\ผู้ใช้” ไม่มีข้อมูล RSOP . สิ่งนี้เกิดขึ้นเนื่องจาก GPResult พยายามรวบรวมข้อมูลของผู้ใช้ที่เริ่มต้น แต่เนื่องจากผู้ใช้รายนี้ไม่ได้เข้าสู่ระบบ จึงไม่มีข้อมูล RSOP สำหรับเขา ในการรวบรวมข้อมูล RSOP สำหรับผู้ใช้ที่มีเซสชันที่ใช้งานอยู่ คุณต้องระบุบัญชีของเขา:gpresult /r /user:corp\edward
ตรวจสอบเวลา (และเขตเวลา) บนไคลเอนต์ด้วย เวลาต้องตรงกับเวลาบนตัวควบคุมโดเมนที่เรียกใช้บทบาท FSMO PDC (ตัวควบคุมโดเมนหลัก)
GPO ต่อไปนี้ไม่ได้ใช้เพราะถูกกรองออก
เมื่อแก้ไขปัญหานโยบายกลุ่มที่บังคับใช้ คุณควรให้ความสนใจในส่วนนี้:ไม่ได้ใช้ GPO ต่อไปนี้เนื่องจากถูกกรองออก . ประกอบด้วยรายการของ GPO ที่ไม่ได้นำไปใช้กับวัตถุนี้ไม่ว่าด้วยเหตุผลใดก็ตาม นี่คือสาเหตุบางประการที่ไม่ใช้ GPOs กับวัตถุ Active Directory เฉพาะ:
- การกรอง:ไม่ได้ใช้ (ว่าง) – นโยบายว่างเปล่า (ไม่มีอะไรให้ใช้);
- การกรอง:ถูกปฏิเสธ (ไม่ทราบสาเหตุ) – ผู้ใช้/คอมพิวเตอร์มักจะไม่ได้รับอนุญาตให้อ่าน/ใช้นโยบายนี้ สิทธิ์สามารถกำหนดค่าได้ในแท็บความปลอดภัยของคอนโซลการจัดการนโยบายกลุ่ม (
gpmc.msc
); - การกรอง:ถูกปฏิเสธ (ความปลอดภัย) — มีการระบุการปฏิเสธอย่างชัดเจนในส่วน ใช้นโยบายกลุ่ม หรือวัตถุ AD ไม่อยู่ในรายชื่อกลุ่มในส่วน Security Filtering ของ GPO
คุณยังดูได้ด้วยว่าควรใช้ GPO กับหน่วยขององค์กร (OU) ใน AD หรือกับวัตถุเฉพาะบนแท็บสิทธิ์ที่มีผล (ขั้นสูง -> การเข้าถึงที่มีประสิทธิภาพ) ใน GPMC
ชุดนโยบายผลลัพธ์ (RSOP.msc) สแนปอินใน Windows
เริ่มแรก คอนโซลกราฟิก RSOP.msc
ใช้ในการวินิจฉัยนโยบายกลุ่มที่ใช้ใน Windows mmc snap-in นี้ช่วยให้คุณได้รับการตั้งค่าของนโยบายที่เป็นผลลัพธ์ (โดเมน + โลคัล) ที่ใช้กับคอมพิวเตอร์และผู้ใช้ในรูปแบบกราฟิกที่คล้ายกับคอนโซลตัวแก้ไข GPO RSOP.msc
คอนโซลในภาพหน้าจอด้านล่างแสดงว่าการตั้งค่าการอัปเดต Windows ได้รับการกำหนดค่าโดยนโยบาย WSUS_SERVERS
คุณไม่สามารถใช้ RSOP.msc เพื่อวิเคราะห์ GPO ที่นำไปใช้อย่างสมบูรณ์ใน Windows เวอร์ชันใหม่ ไม่แสดงการตั้งค่าที่ใช้ผ่านส่วนขยายฝั่งไคลเอ็นต์ (CSE) เช่น GPP (การตั้งค่านโยบายกลุ่ม) ไม่อนุญาตการค้นหา และให้ข้อมูลการวินิจฉัยเพียงเล็กน้อย เมื่อเรียกใช้ rsop.msc
ใน Windows 10 และ 11 มีคำเตือนว่าคุณควรใช้ gpresult เพื่อรับรายงาน GPO ฉบับสมบูรณ์
Starting with Vista, the Resultant Set of Policies (RSoP) report does not show all Microsoft Group Policy settings. To see the full set of Microsoft Group Policy settings applied for a computer or user, use the command-line tool gpresult.
ในบทความนี้ เรามาดูวิธีการใช้คำสั่ง GPResult เพื่อวิเคราะห์ผลลัพธ์ของนโยบายกลุ่มที่ใช้ใน Windows นอกจากนี้ คำแนะนำต่อไปนี้อาจมีประโยชน์สำหรับการแก้ไขปัญหา GPO ในโดเมน:“ปัญหาทั่วไปที่ทำให้ไม่สามารถใช้นโยบายกลุ่มกับไคลเอนต์”