跳转至

Samba 配置共享


2016-09-12 by dongnan

目标

  • 按照部门提供共享文件。
  • 所有共享文件可读,但不可写。
  • 共享文件由专人维护,可写。

环境

CentOS 7.2 amd64
samba-4.2

步骤

安装软件

yum -y install samba samba-client

添加用户

# 系统用户
useradd dongnan

# 配置smb用户
smbpasswd -a dongnan

# 输入两次密码
New SMB password:
Retype new SMB password:
Added user dongnan.

配置 Samba

# 更改权限(共享可读)
chmod -R 755 /home/dongnan/

# 输入命令
vim /etc/samba/smb.conf

# 配置文件类似如下
[dongnan]
comment = dongnan
path = /home/dongnan
public = yes
writable = no

# 重启服务
systemctl restart smb

设置子目录权限

samba 按照部门配置权限,其子目录按照用户拥有写权限。

步骤如下:

  • 创建用户目录, mkdir -p /home/public/develop/zongming
  • 更改目录权限,chown zongming.it /home/public/develop/zongming
  • 创建组,groupadd it
  • 更改用户属组,usermod -g it zongming
  • 更改用户目录,usermod -d /home/public/develop/zongming
  • 添加到smbuser ,smbpasswd -a zongming

配置文件

注意 @it 表示组,拥有写入权限,类似如下:

# 输入命令
vim /etc/samba/smb.conf
    [IT]
    comment = Public Stuff
    path = /home/public
    public = yes
    write list = @it

重启服务

systemctl restart smb

samba v4.4.4

问题描述

samba v.4.4.4 无法使用匿名用户访问,如下图:

环境

服务器端: samba v.4.4.4 ON CentOS 7.3 amd64
客户端: windows 7

解决方法

编辑配置文件
    vim /etc/samba/smb.conf

确保 [global] 字段,有
        map to guest = bad user

修改完成的配置类似如下
    [global]
            workgroup = zzx
            server string = zzx
            log file = /var/log/samba/log.%m
            max log size = 50
            security = user
            map to guest = bad user
            passdb backend = tdbsam

重启服务

systemctl restart smb

验证

回到页面顶部