终于搞定了samba的文件夹访问权限设置
昨天下午w老师我,说现在实验室的文件服务器(内网IP为16,所以简称16)上面有一个文件夹需要设置访问权限,只有指定项目组的人能访问。于是乎昨天晚上在许大牛的协助下设置了半天,查了手册,试了好多方法,均告失败。今天上午继续折腾,通过查看samba的日志文件发现了问题所在,终于搞定了。
1. 问题背景
我们实验室的文件服务器装的是Ubuntu Server,它只负责存放文件,而把用户名和密码的验证工作交给另一台装有Windows Server 2003的服务器来做。这就给这次的任务造成了好多困难,因为手册上查到的关于设置访问权限的东东都是直接说,只要在f配置文件中相应文件夹的配置行添加一行
valid users = user1, @group1
就可以了,可是具体的用户名(或者用户组)到底是16本地的UNIX用户名呢,还是Windows NT域控上的用户名(或者用户组)呢?没人讲。
原始的samba配置文件如下
[global]
security = ads
; netbios name = SVNSERVER
realm = CGCAD.COM
password server = 192.168.100.4
workgroup = CGCAD
idmap uid = 500-10000000
idmap gid = 500-10000000
winbind separator = +
winbind enum users = yes
winbind enum groups = yes
winbind use default domain = yes
template homedir = /home/%D/%U
富贵竹template shell = /bin/bash迷你小麻薯的做法
client use spnego = yes好的美容美容院
domain master = no
client ntlmv2 auth = yes
encrypt passwords = true
winbind use default domain = yes
restrict anonymous = 2
[printers]
comment = All Printers
path = /var/spool/samba
guest ok = No
printable = No
use client driver = No
browseable = No
load printers = No
[Software]
comment = Share Data
path = /var/software
read only = Yes
create mask = 0775
directory mask = 0775
browsable = Yes
public = Yes
writeable = No
force create mode = 0775
force directory mode = 0775
force security mode = 0775
我最大的遗憾是你的遗憾与我有关guest ok = no
inherit permissions = yes
; nt acl support = yes
[TestGroup]
comment = Test Group Share Data
path = /var/TestGroup
read only = No
create mask = 0775
directory mask = 0775
browsable = Yes
优秀团队颁奖词public = Yes
writeable = Yes
force create mode = 0775
force directory mode = 0775
force security mode = 0775
guest ok = no
inherit permissions = yes
; nt acl support = yes
[Incoming]
comment = Incoming
path = /var/incoming
read only = No
create mask = 0777
directory mask = 0777
browsable = Yes
public = Yes
writeable = Yes
force create mode = 0777
force directory mode = 0777
force security mode = 0777
guest ok = Yes
inherit permissions = Yes
; nt acl support = Yes
除了打印机,我们一共有三个文件夹:Inconming,Software,TestGroup,其中Software对一般用户只开放了读权限,没有写权限;三个文件夹都需要用户在域控服务器上验证才能访问。
2. 失败的方法们
假设我们要把test group组的用户成员加入TestGroup文件夹的合法用户列表中,其中,test group组有user1,user2两个用户,他们在NT和UNIX上的用户名一样,用户组的名字则不同,在NT上的叫"test group",而在UNIX上的用户组则叫testgroup。
2.1 直接把valid users = @testgroup造梦西游3宠物怎么得加入f文件中的 [TestGroup] 字段下,结果谁也不能访问这个文件夹了。
2.2 不使用组名,改为一个一个地添加用户: valid users = user1, user2 ,结果同上。
2.3 把NT用户组映射到UNIX用户组上,用 net groupmap modify ntgroup="test group" unixgroup=testgroup 命令(需要root权限),仍然不起作用。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论