linux samba服务搭建

团队需要搭建samba服务共享资源,要求:

1、用户分为管理员、私人用户、公用用户

2、两个共享文件夹:public为公用目录,管理员、私人用户、公用用户登陆后可读写;private为私人目录,管理员可管理,私人用户授权后访问指定文件夹,拥有读写权利

搭建步骤:

sudo apt-get install samba

sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bak

sudo vim /etc/samba/smb.conf

配置方法一:

在smb.conf后加入配置(多个):

[folder1]

   comment = folder comment

   path = /xxx/xxx

   public = no

   valid users = admin, person

   write list = xxx

   create mask = 0777

   directory mask = 0777

该方法可针对用户配置不同路径,但是用户在链接时会在多个文件中选择

配置方法二:

在smb.conf的[global]下增加include = /etc/samba/%U.smb.conf

在/etc/samba/文件中创建用户名.smb.conf文件

用户名.smb.conf配置与方法一相同

该方法可针对登陆的用户显示不同的文件夹。但是访问同级目录的某些文件夹时,也需要配置多个文件,无法显示文件层级结构

比如:Folder文件包含item1, itme2, item3文件,用户只能访问item1, item3的某个子文件

配置方法三:

在smb.conf加入一个配置,然后针对文件夹设置用户权限管理

chown -R liyi.liyi /data/samba/

chmod -R 700 /data/samba/

setfacl -R -m u:fengwuwu:rx /data/samba/

setfacl -R -m u:fengwuwu1:rwx /data/samba/

该方法可以显示文件层级结构,但是对于用户只对/private/dataset/item1有读写权限时,其他用户在/private下建立子目录,该用户仍能读

解决方法:

配置smb.conf时

   create mask = 0700

   directory mask = 0700

 

posted @ 2019-09-05 21:45  寒筱洱  阅读(242)  评论(0编辑  收藏  举报