亲宝软件园·资讯

展开

samba 部署与实验

叶落西南 人气:1
一、本地用户登录
1、本地用户验证(Samba服务器默认的安全级别,用户在访问共享资源之前必须提供用户名和密码进行验证)

拓展:tdbsam:该方式是使用一个数据库文件来验证。数据库文件叫passdb.tdb。可以通过pdbedit -a 向数据库中添加新用户,不过要建立的Samba用户必须先是系统用户。也可以理解为我们使用pdbedit -a 将系统用户转化为了samba 用户。

  • pdbedit -a username:新建Samba账户(将系统用户转化为samba用户,并设置密码)
  • pdbedit -x username:删除Samba账户
  • pdbedit -L:列出Samba用户列表,读取passdb.tdb数据库文件。
2、实验步骤
1、安装samba
    yum install samba -y
2、添加samba用户,samba默认使用系统用户,密码需要使用命令单独创建。
    useradd love1 -s /sbin/nologin
    pdbedit -a love1  #默认共享目录为love1家目录
3、启动samba服务
    systemctl start smb
4、客户机查看与登录
   smbclient -U love1 -L 100.100.100.110
   smbclient  -U love1  //100.100.100.110/love1
二、自定义共享区域

1、修改配置文件,增加自定义共享位置

[root@centos7 ~]# vim /etc/samba/smb.conf
[haha] 
    comment = the share is haha 
    path = /share/haha
    public = yes #允许guest用户访问
    browseable = yes 
    writable = yes 

2、创建共享目录,并且修改权限

1)创建共享目录
    [root@centos7 ~]# mkdir -p /share/haha
2)修改权限(二选一,推荐使用acl权限)
    1、使用文件系统权限
        [root@centos7 ~]#chmod 777 /share/haha 
    2、使用acl权限
        [root@centos7 ~]#setfacl -m u:love1:rwx -R /share/haha     只对已经存在的文件生效   
        [root@centos7 ~]#setfacl -m d:u:love1:rwx -R /share/haha   只对以后新建的文件生效

3、测试配置文件并重启服务

[root@centos7 ~]# testparm  
[root@centos7 ~]# systemctl restart smb

4、客户机查看与登录

   [root@centos7 ~]# smbclient -U love1 -L 100.100.100.110
   [root@centos7 ~]# smbclient  -U love1  //100.100.100.110/haha

4、上传一个文件,测试acl权限

smb: \> put test.sh 
putting file test.sh as \test.sh (19.9 kb/s) (average 19.9 kb/s)
smb: \> ls
  .                                   D        0  Fri Dec 27 14:51:43 2019
  ..                                  D        0  Fri Dec 27 14:33:20 2019
  test.sh                             A       61  Fri Dec 27 14:51:43 2019

6、再创建一个用户love3,love3用户能否删除love1用户上传的文件

[root@centos7 haha]# useradd love3 -s /sbin/nologin
[root@centos7 haha]# pdbedit -a love3
[root@centos7 ~]# smbclient  -U love3  //100.100.100.110/haha
smb: \> del test.sh   #无法删除,因为只针对love1用户设置了acl权限,love3用户只有rx权限,所以无法修改和上传,只有下载权限。
NT_STATUS_ACCESS_DENIED deleting remote file \test.sh
NT_STATUS_ACCESS_DENIED listing \test.sh
三、访问控制

上一个实验通过修改目录权限达到访问控制,这里通过修改配置文件达到访问控制。前提是将目录权限放到最大,chmod 777 /share/haha

1)部分用户登录 samba 服务器
valid users  仅允许部分用户访问共享区域 
修改/etc/samba/smb.conf 中自定义的共享区域 
    valid users = 用户,@组(多个逗号分隔) 
2)部分用户对共享区域有写权限 
修改/etc/samba/smb.conf 中自定义的共享区域 
    read only = yes 
    write list = love1 
3)设置上传文件的默认权限 
    create  mask    文件的默认权限 
    directory  mask  目录的默认权限 
例如:
     create mask = 666 
     directory mask = 777 
四、用户别名(虚拟用户,该用户具有原用户全部权限)

1、添加别名(/etc/samba/smbusers)

[root@centos7 samba]# vim /etc/samba/smbusers
love1=lv 

2、启用别名(修改主配置文件)

vim /etc/samba/smb.conf 
username map = /etc/samba/smbusers 

3)测试

[root@centos7 ~]# smbclient  -U lv  //100.100.100.110/haha
五、共享目录挂载

1、linux系统挂载

Linux 下: 
临时挂载: 
    mount -t cifs -o username=xxx,password=xxx  //服务器 ip/服务器共享 /本地挂载目录
    mount -t cifs -o user=love1,password=123456,sec=ntlmssp //100.100.100.110/haha/ /tmp/  (内核为3.10.0-1062.9.1.el7.x86_64,需要指定安全策略,sec=ntlmssp)
永久挂载:/etc/fstab 
    //服务器 ip/服务器共享 /本地挂载目录 cifs  defaults,username=xxx,password=xxx,sec=ntlmssp 0 0 

2、window下
1)连接


net use * https://img.qb5200.com/download-x/del #删除连接信息

2)挂载


加载全部内容

相关教程
猜你喜欢
用户评论