GPO không áp dụng; lý do: Không thể truy cập, trống hoặc vô hiệu hóa; Máy chủ 2012 R2 và Windows 10


16

Tôi có một tên miền Windows Server 2012 R2.

Hôm qua, ổ đĩa mạng của máy tính (chạy Windows 10 Pro) đã ngừng hoạt động.

Sau khi điều tra thêm ( gpresult /h) nó xuất hiện TẤT CẢ các đối tượng chính sách nhóm đang thất bại với lý do Inaccessible, Empty, or Disabled.

Tôi đã xác nhận rằng tất cả các GPO vẫn tồn tại và được bật trên cả hai bộ điều khiển miền (dự phòng và cục bộ). Hơn nữa, có 20 máy khác trên cùng một miền và LAN hoàn toàn không có vấn đề gì.

Tuy nhiên, có một máy tính khác mà tôi đã thử nghiệm có cùng một vấn đề! Điều đó có nghĩa là vấn đề với các máy chủ?

gpresult /rbáo cáo rằng một khách hàng đang nhận GPO từ DC1 cục bộ và khách hàng khác từ DC2. Vì vậy, nó không phải là một vấn đề liên quan đến một DC cụ thể.

gpupdate /force không sửa gì cả (mặc dù tuyên bố rằng các chính sách đã được áp dụng).

Tôi đã cố gắng xóa các mục đăng ký cho chính sách địa phương (theo hướng dẫn này /superuser/379908/how-to-clear-or-remove-domain-applied-group-policy-sinstall-after-leaving-the -do ) và khởi động lại - cùng một vấn đề.

Tôi đã tìm thấy trang hỗ trợ này từ Microsoft ( https://support.microsoft.com/en-us/kb/2976965 ), nhưng nó tuyên bố nó chỉ áp dụng cho Windows 7 hoặc các máy khách cũ hơn.

Tất cả các máy của tôi (cả máy chủ và máy khách) đều đang chạy phiên bản 64 bit và được cập nhật đầy đủ. Tôi đã khởi động lại tất cả chúng chỉ để chắc chắn.



Cảm ơn. Nhận xét của bạn cung cấp manh mối cho giải pháp. Xem bên dưới.
Daniel

Câu trả lời:


19

Kiểm tra các liên kết vá joeqwerty quá .

Có một chi tiết quan trọng:

Vấn đề đã biết

MS16-072 thay đổi bối cảnh bảo mật mà chính sách nhóm người dùng được truy xuất. Thay đổi hành vi theo thiết kế này bảo vệ máy tính của khách hàng khỏi lỗ hổng bảo mật. Trước khi MS16-072 được cài đặt, các chính sách nhóm người dùng đã được truy xuất bằng cách sử dụng bối cảnh bảo mật của người dùng. Sau khi MS16-072 được cài đặt, các chính sách nhóm người dùng được truy xuất bằng cách sử dụng bối cảnh bảo mật của máy. Vấn đề này được áp dụng cho các bài viết KB sau:

  • 3159398 MS16-072: Mô tả bản cập nhật bảo mật cho Chính sách nhóm: ngày 14 tháng 6 năm 2016
  • 3163017 Cập nhật tích lũy cho Windows 10: 14 tháng 6 năm 2016
  • 3163018 Cập nhật tích lũy cho Windows 10 Phiên bản 1511 và Windows Server 2016 Xem trước kỹ thuật 4: ngày 14 tháng 6 năm 2016
  • 3163016 Cập nhật tích lũy cho Windows Server 2016 Xem trước kỹ thuật 5: ngày 14 tháng 6 năm 2016

Triệu chứng

Tất cả Chính sách nhóm người dùng, bao gồm cả những chính sách đã được lọc bảo mật trên tài khoản người dùng hoặc nhóm bảo mật hoặc cả hai, có thể không áp dụng được trên các máy tính gia nhập miền.

Nguyên nhân

Sự cố này có thể xảy ra nếu Đối tượng chính sách nhóm thiếu quyền Đọc cho nhóm Người dùng được xác thực hoặc nếu bạn đang sử dụng bộ lọc bảo mật và thiếu quyền Đọc cho nhóm máy tính miền.

Nghị quyết

Để giải quyết vấn đề này, hãy sử dụng Bảng điều khiển quản lý chính sách nhóm (GPMC.MSC) và làm theo một trong các bước sau:

- Thêm nhóm Người dùng được xác thực với Quyền đọc trên Đối tượng chính sách nhóm (GPO).
- Nếu bạn đang sử dụng tính năng lọc bảo mật, hãy thêm nhóm Máy tính Miền với quyền đọc.

Xem liên kết này Triển khai MS16-072 giải thích mọi thứ và cung cấp tập lệnh để sửa chữa các GPO bị ảnh hưởng. Tập lệnh thêm người dùng Xác thực đọc quyền cho tất cả các GPO không có quyền cho người dùng Xác thực.

# Copyright (C) Microsoft Corporation. All rights reserved.

$osver = [System.Environment]::OSVersion.Version
$win7 = New-Object System.Version 6, 1, 7601, 0

if($osver -lt $win7)
{
    Write-Error "OS Version is not compatible for this script. Please run on Windows 7 or above"
    return
}

Try
{
    Import-Module GroupPolicy
}
Catch
{
    Write-Error "GP Management tools may not be installed on this machine. Script cannot run"
    return
}

$arrgpo = New-Object System.Collections.ArrayList

foreach ($loopGPO in Get-GPO -All)
{
    if ($loopGPO.User.Enabled)
    {
        $AuthPermissionsExists = Get-GPPermissions -Guid $loopGPO.Id -All | Select-Object -ExpandProperty Trustee | ? {$_.Name -eq "Authenticated Users"}
        If (!$AuthPermissionsExists)
        {
            $arrgpo.Add($loopGPO) | Out-Null
        }
    }
}

if($arrgpo.Count -eq 0)
{
    echo "All Group Policy Objects grant access to 'Authenticated Users'"
    return
}
else
{
    Write-Warning  "The following Group Policy Objects do not grant any permissions to the 'Authenticated Users' group:"
    foreach ($loopGPO in $arrgpo)
    {
        write-host "'$($loopgpo.DisplayName)'"
    }
}

$title = "Adjust GPO Permissions"
$message = "The Group Policy Objects (GPOs) listed above do not have the Authenticated Users group added with any permissions. Group policies may fail to apply if the computer attempting to list the GPOs required to download does not have Read Permissions. Would you like to adjust the GPO permissions by adding Authenticated Users group Read permissions?"

$yes = New-Object System.Management.Automation.Host.ChoiceDescription "&Yes", `
    "Adds Authenticated Users group to all user GPOs which don't have 'Read' permissions"
$no = New-Object System.Management.Automation.Host.ChoiceDescription "&No", `
    "No Action will be taken. Some Group Policies may fail to apply"
$options = [System.Management.Automation.Host.ChoiceDescription[]]($yes, $no)
$result = $host.ui.PromptForChoice($title, $message, $options, 0)  
$appliedgroup = $null
switch ($result)
{
    0 {$appliedgroup = "Authenticated Users"}
    1 {$appliedgroup = $null}
}
If($appliedgroup)
{
    foreach($loopgpo in $arrgpo)
    {
        write-host "Adding 'Read' permissions for '$appliedgroup' to the GPO '$($loopgpo.DisplayName)'."
        Set-GPPermissions -Guid $loopgpo.Id -TargetName $appliedgroup -TargetType group -PermissionLevel GpoRead | Out-Null
    }
}

Nếu bạn muốn đặt quyền đọc cho Máy tính Miền (như tôi làm) thay vì Người dùng được xác thực, chỉ cần thay đổi điều này 0 {$appliedgroup = "Authenticated Users"}thành điều đó0 {$appliedgroup = "Domain Computers"}


Có vẻ như tôi sẽ đánh dấu đây là câu trả lời. Tôi đã thêm các máy tính tên miền miền cứng với quyền truy cập đọc vào bộ lọc bảo mật của tôi và bây giờ ít nhất một trong số các máy tính có vấn đề đang hoạt động. Vì vậy, tôi cho rằng một bản vá tự động áp dụng cho máy chủ thông qua Windows Update và gây ra vấn đề này. Bây giờ tôi cũng đang tự hỏi sự khác biệt giữa tab Phân quyền cho GPO và phần Lọc bảo mật ... thời gian để đọc lên
Daniel

2
Để thêm một chút vào sự nhầm lẫn, đối với tôi, cần phải thêm nhóm bảo mật chứa người dùng VÀ nhóm chứa máy tính để áp dụng chính sách. Chỉ thêm một (người dùng hoặc máy tính) sẽ dẫn đến chính sách không được áp dụng. Không nhất thiết phải là nhóm Máy tính Miền, chỉ cần kết hợp người dùng và máy tính phải hợp lệ trong bộ lọc bảo mật nếu áp dụng chính sách.
Adwaenyth

Điều đó đã sửa nó cho công ty của chúng tôi -> Thêm nhóm Người dùng được xác thực bằng Quyền đọc trên Đối tượng chính sách nhóm (GPO). Big thx
Brain Foo Long

Đó dường như không phải là một giải pháp thực tế vì tôi không muốn mọi người áp dụng GPO đó, chỉ những người cụ thể trong nhóm. Tại sao MS vẫn triển khai điều này trong Windows Update? Nó phá vỡ mọi thứ.
Sephethus

@Sephethus Sử dụng tab ủy nhiệm để thêm đúng máy tính miền, GPO sẽ hoạt động như bình thường theo cách đó. Nếu GPO của bạn không có cài đặt máy tính, việc thêm máy tính miền vào bộ lọc bảo mật cũng sẽ không có gì áp dụng, nhưng theo tôi, tab ủy nhiệm sẽ tốt hơn.
yagmoth555
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.