我如何设置Samba共享只允许某些用户访问?


31

我在Ubuntu Server 12.04上安装了RAID10阵列。我已经在挂载点中创建了一些文件夹,并且需要以下功能。

将有4个用户,其中3个是Windows用户:“一个”,“两个”和“三个”。“ four”是媒体流媒体,仅需要访问MEDIA共享。一二和三需要完全访问媒体共享和他们自己的个人共享(用于文档),只有其他用户可以访问。

当前,用户四可以完美工作(具有对MEDIA文件夹的完全访问权限,并且不能访问其他用户拥有的文件夹)。问题是,当以其他用户身份登录时,我无法访问任何一个共享。(尝试使用有效的用户=并使用chmod添加权限无济于事)。

TL; DR:我需要知道如何正确配置Samba,以限制某些用户对某些共享的访问,并允许所有用户访问一个公用文件夹(RAID10装载中的所有文件)。

Answers:


45

每个samba用户也必须具有一个普通的linux帐户。

  1. 确保每个用户都可以访问unix一侧的公共媒体文件夹(没有samba);另外,您也可以设置force usersmb.conf
  2. 确保每个用户都设置了一个samba密码。你可以用sudo smbpasswd -a your_user
  3. /etc/samba/smb.conf:检查security = user[GLOBAL]部分是否设置了该行
  4. 在中设置您的份额/etc/samba/smb.conf,请参见示例

共享示例:

[allaccess]
    path = /media/common
    read only = no
    writeable = yes
    browseable = yes
    valid users = one, two, three, four
    create mask = 0644
    directory mask = 0755
    ; if you set this, all files get written as this user
    force user = one

可以通过以下方式访问 \\yourserver\allaccess

单个用户共享:

[special]
    path = /home/two/onlytwo
    read only = no
    writeable = yes
    browseable = yes
    valid users = one
    create mask = 0640
    directory mask = 0750

更改后,使用以下命令重新启动samba服务器:

sudo service smbd restart

2
先生,您是神,面具和武力使用者一直都是我所需要的,但我不明白。
利亚姆

4
我认为“只读”和“可写”彼此之间是所谓的“反向同义词”。无需同时设置它们。
Mike Diehn 2014年

1
太棒了!除了第二步,我已经做了所有事情。在设置samba共享时,我从未见过其他地方提到过这一点。谢谢!!
PatrickSteele 2014年

如果希望共享名称可写,请不要将其指定为临时名称。
SergA
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.