Computer >> Hướng Dẫn Máy Tính >  >> Hệ Thống >> Máy Chủ Windows

Sử Dụng Lệnh GPResult Để Kiểm Tra GPO Đã Áp Dụng và Dữ Liệu RSoP

Công cụ dòng lệnh GPResult.exe dùng để lấy Resultant Set of Policy (RSoP) được áp dụng cho user và/hoặc máy tính trong domain Active Directory. GPResult cho phép hiển thị danh sách chính sách domain (GPO) áp dụng cho máy và user, cài đặt chính sách, thời gian xử lý GPO và lỗi. Đây là công cụ phổ biến nhất của admin để phân tích cài đặt và khắc phục sự cố Group Policy trong Windows.

Trong bài này, chúng ta sẽ xem cách dùng lệnh GPResult để chẩn đoán, gỡ lỗi, và phân tích cài đặt Group Policy áp dụng cho Windows trong domain Active Directory.

Cách Sử Dụng Lệnh Group Policy Results (GPResult.exe)?

Bạn phải chạy lệnh GPResult trên máy tính bạn muốn kiểm tra áp dụng Group Policy. Cú pháp GPResult:

GPRESULT [/S system [/U username [/P [password]]]] [/SCOPE scope] [/USER targetusername] [/R | /V | /Z] [(/X | /H) <filename> [/F]]

Để lấy thông tin chi tiết về Group Policy áp dụng cho user hoặc máy cụ thể, cũng như các cài đặt khác liên quan đến hạ tầng GPO (cài đặt chính sách kết quả, RsoP), mở command prompt và chạy lệnh:
Gpresult /r
Kết quả lệnh chia thành hai phần:

  • COMPUTER SETTINGS – phần chứa thông tin đối tượng GP áp dụng cho máy (là đối tượng Active Directory);
  • USER SETTINGS – phần chính sách user (chính sách áp dụng cho tài khoản user AD).

Hãy xem nhanh các cài đặt/phần cơ bản trong đầu ra GPResult quan tâm admin:

  • Site Name – tên AD site máy tính nằm;
  • CN – tên chuẩn đầy đủ user/máy cho dữ liệu RSoP;
  • Last time Group Policy was applied – thời gian cài đặt Group Policy cuối cùng được áp dụng (cập nhật);
  • Group Policy was applied from – tên domain controller tải phiên bản GPO cuối;
  • Domain Name and Domain Type – tên và số phiên bản schema Active Directory domain;
  • Applied Group Policy Objects – danh sách GPO áp dụng;
  • The following GPOs were not applied because they were filtered out
  • The user is a part of the following security groups – danh sách nhóm bảo mật domain user là thành viên.

Sử Dụng Lệnh GPResult Để Kiểm Tra GPO Đã Áp Dụng và Dữ Liệu RSoP

Trong ví dụ, bạn thấy 4 Group Policy áp dụng cho đối tượng user.

  • Disable Cached Credentials;
  • DNS Suffix Search List;
  • Enable Windows Firewall;
  • Default Domain Policy.

Báo cáo cũng chứa thông tin cài đặt chính sách cục bộ qua Local Group Policy Editor (gpedit.msc).

Bạn có thể dùng tùy chọn /scope để chỉ hiển thị chính sách user hoặc máy:
gpresult /r /scope:user
hoặc chỉ chính sách máy áp dụng:
gpresult /r /scope:computer
Nếu cố lấy danh sách GPO áp dụng cho đối tượng máy dưới tài khoản user không phải admin, lệnh gpresult trả lỗi access denied:
gpresult /r /scope:computer

ERROR: Access Denied.

Sử Dụng Lệnh GPResult Để Kiểm Tra GPO Đã Áp Dụng và Dữ Liệu RSoP

Để thuận tiện phân tích và parse dữ liệu RSOP, bạn có thể chuyển kết quả Gpresult đến clipboard:
Gpresult /r |clip
hoặc file văn bản:
Gpresult /r > c:\ps\gpresult.txt
Để hiển thị thông tin RSoP chi tiết hơn, thêm khóa /z:
Gpresult /r /z
Ví dụ, screenshot hiển thị cài đặt chính sách mật khẩu domain áp dụng cho máy.

Sử Dụng Lệnh GPResult Để Kiểm Tra GPO Đã Áp Dụng và Dữ Liệu RSoP

Xuất Báo Cáo RSoP Ra HTML Với GPResult

GPResult cho phép tạo báo cáo HTML về chính sách kết quả áp dụng (có trong Windows 7 trở lên). Báo cáo chứa thông tin chi tiết tất cả cài đặt hệ thống do Group Policy thiết lập và tên GPO đã thiết lập. Báo cáo HTML gpresult về cấu trúc tương tự tab Settings trong Group Policy Management Console (gpmc.msc). Bạn có thể tạo báo cáo RSoP HTML bằng lệnh gpresult:
GPResult /h c:\PS\gpo-report.html /f
Nếu không chỉ định đường dẫn đầy đủ file HTML, báo cáo gpresult HTML lưu vào thư mục %WINDIR%\system32. Sử Dụng Lệnh GPResult Để Kiểm Tra GPO Đã Áp Dụng và Dữ Liệu RSoP

Để tạo báo cáo và tự mở trong trình duyệt, chạy lệnh:
GPResult /h GPResult.html & GPResult.html
Báo cáo HTML gpresult chứa nhiều thông tin hữu ích: bạn thấy lỗi áp dụng GPO, thời gian xử lý (ms) cho chính sách cụ thể và CSEs (trong Computer Details -> Component Status). Hữu ích khi cần hiểu tại sao xử lý GPO lâu.

Ví dụ, screenshot trên cho thấy chính sách Enforce password history policy với cài đặt “24 passwords remembered” được áp dụng bởi Default Domain Policy (Winning GPO column).

Báo cáo HTML cho phép trình bày tập kết quả GPO máy tính dạng đồ họa thuận tiện.

GPResult: Lấy Dữ Liệu RSOP Từ Máy Tính Từ Xa

GPResult cũng lấy tập chính sách kết quả từ máy tính từ xa mà không cần log cục bộ hoặc RDP vào thiết bị từ xa.
GPResult /s remote-pc-name1 /r
Bạn có thể chỉ định username và mật khẩu kết nối máy từ xa dùng tùy chọn gpresult:

gpresult /R /S wks2b21c /scope user /U corp\jsmith /P myPaSSw0rd1!

Sử Dụng Lệnh GPResult Để Kiểm Tra GPO Đã Áp Dụng và Dữ Liệu RSoP

Nếu không muốn mật khẩu lưu trong lịch sử lệnh PowerShell, có thể nhắc mật khẩu tương tác:

gpresult /R /S wks2b21c /scope user /U corp\jsmith /P

Tương tự, bạn có thể thu thập dữ liệu từ xa về cả chính sách user và máy.

Nếu không biết tên user đăng nhập trên máy từ xa, lấy username như sau:

qwinsta /SERVER:wks2b21c

Báo cáo RSOP HTML tương tự báo cáo do gpresult tạo có thể tạo bằng PowerShell. Để lấy báo cáo chính sách kết quả từ máy từ xa, dùng cmdlet Get-GPResultantSetOfPolicy từ module GroupPolicy:

Get-GPResultantSetOfPolicy -user jsmith -computer corp\wks2b21c -reporttype html -path c:\ps\gpo_rsop_report.html

GPResult: User Không Có Dữ Liệu RSoP

Khi UAC bật và GPResult dùng ở chế độ không nâng cao, chỉ phần cài đặt user của Group Policy hiển thị. Nếu cần cả hai phần (USER SETTINGS và COMPUTER SETTINGS) hiển thị, lệnh phải chạy trong command prompt với đặc quyền administrator.

Nếu command prompt nâng cao chạy thay mặt tài khoản khác user hiện tại, công cụ cảnh báo: INFO: The user “domain\user” does not have RSOP data. Điều này xảy ra vì GPResult cố thu thập dữ liệu user đã khởi động nó, nhưng vì user này chưa đăng nhập, không có thông tin RSOP cho họ. Để thu thập RSOP cho user có phiên hoạt động, chỉ định tài khoản:
gpresult /r /user:corp\edward
Sử Dụng Lệnh GPResult Để Kiểm Tra GPO Đã Áp Dụng và Dữ Liệu RSoP

Cũng kiểm tra thời gian (và múi giờ) trên client. Thời gian phải khớp với thời gian trên domain controller chạy vai trò FSMO PDC (Primary Domain Controller).

The following GPOs Were Not Applied Because They Were Filtered Out

Khi khắc phục sự cố Group Policy áp dụng, đáng chú ý phần: The following GPOs were not applied because they were filtered out. Nó chứa danh sách GPO không áp dụng cho đối tượng này vì bất kỳ lý do nào. Dưới đây là lý do GPO không áp dụng cho đối tượng AD cụ thể:

  • Filtering: Not Applied (Empty) – chính sách rỗng (không có gì áp dụng);
  • Filtering: Denied (Unknown Reason) – user/máy có thể không có quyền đọc/áp dụng chính sách. Quyền cấu hình trong tab Security của Group Policy Management Console (gpmc.msc);
  • Filtering: Denied (Security) — từ chối rõ ràng trong phần Apply Group Policy, hoặc đối tượng AD không trong danh sách nhóm trong Security Filtering của GPO.

Sử Dụng Lệnh GPResult Để Kiểm Tra GPO Đã Áp Dụng và Dữ Liệu RSoP

Bạn cũng có thể xem GPO có nên áp dụng cho organizational unit (OU) trong AD hoặc đối tượng cụ thể trên tab effective permissions (Advanced -> Effective Access) trong GPMC.

Snap-in Resultant Set of Policies (RSOP.msc) Trong Windows

Ban đầu, console đồ họa RSOP.msc dùng để chẩn đoán Group Policy áp dụng trong Windows. Snap-in mmc này cho phép lấy cài đặt chính sách kết quả (domain + local) áp dụng cho máy và user dạng đồ họa tương tự console chỉnh sửa GPO. Console RSOP.msc trên screenshot dưới cho thấy cài đặt Windows update được cấu hình bởi chính sách WSUS_SERVERS.

Sử Dụng Lệnh GPResult Để Kiểm Tra GPO Đã Áp Dụng và Dữ Liệu RSoP

Bạn không thể dùng RSOP.msc để phân tích đầy đủ GPO áp dụng trong Windows hiện đại. Nó không hiển thị cài đặt áp dụng qua Client Side Extensions (CSE), như GPP (Group Policy Preferences), không cho phép tìm kiếm, và cung cấp ít thông tin chẩn đoán. Khi chạy rsop.msc trên Windows 10 và 11, có cảnh báo nên dùng gpresult để lấy báo cáo GPO đầy đủ.

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.

Sử Dụng Lệnh GPResult Để Kiểm Tra GPO Đã Áp Dụng và Dữ Liệu RSoP

Trong bài này, chúng ta xem cách dùng lệnh GPResult phân tích Group Policy kết quả áp dụng trong Windows. Ngoài ra, hướng dẫn sau có thể giúp khắc phục sự cố GPO trong domain: “Common issues that prevent Group Policy from being applied to clients”.