fab*_*ian 12 active-directory samba access-control-list file-permissions posix
我已经设置了一个带有 AD 集成和一个启用了 ACL 的文件系统的 Samba 3 主机。使用 Windows 客户端,我可以设置用户和组权限。
到目前为止,Samba 只是映射到 POSIX ACL 的 rwx 权限,这阻止我在 Windows 上使用“修改”或“完全控制”权限。我还阅读了一些关于 xattrs 和 ZFS ACL 支持的内容。
有人可以暗示超越 POSIX ACL 以完全类似于 Windows ACE 的最佳方法是什么吗?
这就是我一直这样做的方式,不太确定我在哪里读到的。
为了将 Samba 共享上的大多数 Windows ACL 选项连接到 AD,您需要同时启用 POSIX ACL 和 XATTRS:
/dev/sda2 /samba ext3 user_xattr,acl 1 2
Run Code Online (Sandbox Code Playgroud)
在您的 smb.conf 中,您需要像这样启用 idmapping、nt acls 和属性映射:
idmap uid = 16777216-33554431
idmap gid = 16777216-33554431
idmap backend = idmap_rid:<domain_netbios_name>=16777216-33554431
nt acl support = yes
inherit acls = yes
map acl inherit = yes
map archive = no
map hidden = no
map read only = no
map system = no
store dos attributes = yes
inherit permissions = yes
Run Code Online (Sandbox Code Playgroud)
然后您需要做的就是为共享定义管理员用户,并使用该用户从 Windows 编辑安全设置。
[public]
path = /share/Public
public = yes
writable = yes
printable = no
admin users = "DOMAIN\user"
Run Code Online (Sandbox Code Playgroud)
唯一的问题可能与现有的 ACL(您“拒绝”root 并将所有权转让给您的 Windows 用户)和未映射的用户组有关。
要手动映射组,您需要执行以下操作:
net groupmap delete ntgroup="Domain Admins"
net groupmap delete ntgroup="Domain Users"
net groupmap delete ntgroup="Domain Guests"
net groupmap add ntgroup="Domain Admins" rid=512 unixgroup=root
net groupmap add ntgroup="Domain Users" rid=513 unixgroup=users
net groupmap add ntgroup="Domain Guests" rid=514 unixgroup=nobody
Run Code Online (Sandbox Code Playgroud)
对于内置安全组。
然后对于您的所有组:
groupadd mygroup
net groupmap delete ntgroup="mygroup"
net groupmap add ntgroup="DOMAIN\mygroup" rid=1000 unixgroup=mygroup type=d
Run Code Online (Sandbox Code Playgroud)
小智 1
您需要做两件事。
首先,您的文件系统必须支持 ACL。以下是 fstab 文件中启用 ACL 的行的示例,您的当然会有所不同:
/dev/mapper/VolGroup00-SambaVol /samba ext3 defaults,acl 0 0
Run Code Online (Sandbox Code Playgroud)
完成此操作(并重新安装或重新启动)后,您将需要在 smb.conf 文件中启用 nt acl:
[share1]
path = /samba/share1
nt acl support = yes
writeable = yes
Run Code Online (Sandbox Code Playgroud)
完成这两项操作并重新启动 samba 后,您应该拥有正确的 ACL。
归档时间: |
|
查看次数: |
24245 次 |
最近记录: |