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)挂载
加载全部内容