我是新手,我不知道在哪里可以找到这个问题的答案。我使用虚拟机创建了一个实验室环境,并根据 samba-wiki 上的手册创建了我自己的自编译、干净的 samba-dc 4.22。除了在 Win10 客户端上应用策略(以及未来的 Win11,Linux 尚未测试)之外,一切似乎都正常(即 DNS、用户和计算机管理、共享、创建策略)。
我根据 samba-wiki 上的手册成功安装了适用于 UNIX 的 admx-templates,然后将其安装在适用于 Windows 10 (22H2) 的 sysvol/Policies 目录中。
但是,尽管 gpuupdate 已成功完成,但它没有任何效果。运行“策略结果集”时,我可以看到给定的屏幕截图,根据 ID,该屏幕截图指的是“错误/警告时的默认域策略屏幕截图”
但是当我检查 sysvol-dir 时,文件夹结构显然没有完成。因此,屏幕截图中的错误消息有点误导,因为访问被“拒绝”,因为各个文件夹和 GptTmpl.inf 不存在,而这些策略均不存在。
tree -d
│
│ │ └── 脚本 │ └── 用户
│ └── {6AC1786C -016F-11D2-945F-00C04FB984F9 }
│ │ │ │ └── USER \
我不知道这是否相关,但每次我创建或修改 GP 时,sysvolcheck 都会给我一个我无法理解的错误,但 sysvolreset 似乎可以修复它 - 至少在某种程度上,所以我不再收到错误。
samba-tool ntacl sysvolcheck -U administrator
错误(<class 'samba.provision.ProvisioningError'>):未捕获的异常 - ProvisioningError:GPO 目录 /usr/local/samba/var/locks/sysvol/ad-test.home/Policies/{199F4DF0-8969-4E75-861D-F9AB6C73770B} 上的 DB ACL O:DAG:DAD:PAI(A;OICI;FA;;;DA)(A;OICI;FA;;;EA)(A;OICIIO;FA;;;CO)(A;OICI;FA;;;DA)( A;OICI;FA;;;SY)(A;OICI;0x1200a9;;;AU)(A;OICI;0x1200a9;;;ED)(A;OICI;0x1200a9;;;DU)与预期值不匹配O:DAG:DAD:PAR(A;OICI;FA;;;DA)(A;OICI;FA;;;EA)(A;OICIIO;FA;;;CO)(A;OICI;FA;;;DA)(A;OICI;FA;;;SY)(A;OICI;0x1200a9;;;AU)(A;OICI;0x1200 a9;;;ED)(A;OICI;0x1200a9;;;DU)(OA;OICI;;edacfd8f-ffb3-11d1-b41d-00 a0c968f939;;AU)(OA;OICI;;edacfd8f-ffb3-11d1-b41d-00a0c968f939;;DU)来自 GPO 对象
文件“/usr/local/samba/lib64/python3.9/site-packages/samba/netcmd/ init .py”,第 356 行,在 _run 中
返回 self.run(*args,**kwargs)
文件“/usr/local/samba/lib64/python3.9/site-packages/samba/netcmd/ntacl.py”,第 484 行,在运行中
provision.checksysvolacl(samdb,netlogon,sysvol,
文件“/usr/local/samba/lib64/python3.9/site-packages/samba/provision/ init .py”,第 1885 行,在 checksysvolacl 中
check_gpos_acl(sysvol,dnsdomain,domainsid,domaindn,samdb,lp,
文件“/usr/local/samba/lib64/python3.9/site-packages/samba/provision/ init .py", 第 1835 行,在 check_gpos_acl
check_dir_acl(policy_path, dsacl2fsacl(acl, domainsid), lp,
文件“/usr/local/samba/lib64/python3.9/site-packages/samba/provision/ init .py", 第 1778 行,在 check_dir_acl 中
引发 ProvisioningError('GPO 目录 %s %s 上的 %s ACL 与 GPO 对象的预期值 %s 不匹配'% (acl_type(direct_db_access), path, fsacl_sddl, acl))
屏幕截图中的 gpttmpl.inf 文件是否存在于网络上?如果没有,则什么都行不通。文件夹 31b2f340-016d-11d2-945f-00c04fb984f9 是默认域策略,是服务正常运行的重要对象。发生了一些不好的事情,通常正确的解决方法是从备份中恢复。
如果您没有备份,您可以重新创建默认域策略。
dcgpofix /target:domain
https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/dcgpofix
如何在 Windows Server 中的默认域组策略中重置用户权限 https://learn.microsoft.com/en-us/troubshoot/windows-server/group-policy/reset-user-rights-in-default-domain-group-policy