CentOS 7下samba服务的简单设置

近日公司内网服务器需要开samba服务给员工使用,用于图纸管理。暂时先设置两个账号,一个普通账号,一个图纸管理员账号。再设置两个共享目录给两种权限账号使用。

假设两个账号为 USERDWG 。两个目录名称为 SMBUSERSMBDWG

1、先建立物理文件夹。

公司内网服务器运行网页版图纸管理软件,其图纸预览插件只能读取当前目录及其子目录下的图纸文件,其他目录的文件无法读取,故只能将图纸文件存放在网页根目录下。

我使用apache,所以存放图纸目录设为 /var/www/html/DWG ,所以图纸管理员账号可以访问的物理目录即为前面这个 。

另一个普通账号可以访问的物理目录设为 /share/USER

sudo mkdir /var/www/html/DWG
sudo mkdir /share/USER

然后设置相应的权限,将 USER 下的文件归属给 nobody

sudo chown -R nobody:nobody /share/USER

2、设置相应的SElinux权限

sudo chcon -R -t samba_share_t /share/USER

apache的SElinux权限也需要设置,不然无法正常提供图纸管理服务

sudo chcon -R --reference=/var/www/html /var/www/html/DWG

通过上面的设置后,/var/www/html/DWG 的SElinux文件类型是 httpd_sys_content_t ,默认samba是不能共享 httpd_sys_content_t 文件类型的,所以还需要设置samba的SElinux布尔值。

sudo setsebool -P samba_export_all_rw on

3、CentOS 7防火墙设置

CentOS 7默认开启了 fire-wall 防火墙,需要将samba服务端口开放出来

sudo firewall-cmd --permanent --zone=public --add-service=samba
sudo firewall-cmd --reload

4、设置samba的配置文件

打开 /etc/samba/smb.conf ,修改成如下所示

[global]
        workgroup = COM    #工作组名称随意
        security = user    #需要密码访问
        server string = Samba Server %v

[SMBUSER]
        path = /share/USER    #物理目录
        writable  = yes    #可写
        browseable = yes    #可浏览
        guest ok = yes

[SMBDWG]
        path = /var/www/html/DWG    #物理目录
        valid users = DWG    #可访问的用户列表,多个用户用逗号分隔
        write list = DWG    #具有可写权限的用户列表,多个用户用逗号分隔
        writeable = no    #其余用户不可写

最后重启samba服务就大功告成了

sudo systemctl restart smb
sudo systemctl restart nmb


CashQian Blog

欢迎来到我的个人博客网站

友情链接

Powered by Python Blog. Copyright © 2016.

www.cashqian.net. All rights reserved.