samba服务共享--客户端匿名访问服务器、身份验证和访问控制、用户名映射、服务器挂载使用客户端本地文件

标签: linux  centos

实验环境

一台centos7作为服务器,一台Windows10作为客户端,均要选择仅主机模式,服务器可使用双网卡,用NAT下资源。

实验内容

实验1:客户端匿名访问服务器
实验2:身份验证和访问控制
实验3:用户名映射
实验4:服务器挂载使用客户端本地文件

实验步骤

实验一:客户端匿名访问服务器

服务器配置

网卡配置:192.168.100.101

防火墙设置

[[email protected] ~]# iptables -F
[[email protected] ~]# setenforce 0
[[email protected] ~]# 

samba配置

[[email protected] abc]# yum -y install samba
[[email protected] ~]# cd /etc/samba/
[[email protected] samba]# ls
lmhosts  smb.conf  smb.conf.example
[[email protected] samba]# mv smb.conf smb.conf.bakup  ##备份配置文件
[[email protected] samba]# ls
lmhosts  smb.conf  smb.conf.bakup  smb.conf.example
[[email protected] samba]# vim smb.conf
[[email protected] samba]# vim smb.conf
...
[global]
        workgroup = SAMBA
        security = user
        map to guest = Bad user  ##设置匿名访问,centos7不支持设置成security =share

        passdb backend = tdbsam

        printing = cups
        printcap name = cups
        load printers = yes
        cups options = raw

...省略部分内容
[share]                     ##设置共享文件
        path=/opt/aaa      ##路径
        public = yes         ##公共访问
        browseable = yes     ##可看
        writable = yes         ##可写
        create mask =0644     ##给上传文件权限
        directory mask =0755   ##给上传目录权限
[[email protected] ~]# mkdir /opt/aaa     ##创建刚刚设置的路径
[[email protected] ~]# chmod 777 /opt/aaa  ##放权
[[email protected] ~]# systemctl start smb
[[email protected] ~]# netstat -antp         ##服务端口445   139

tcp        0      0 0.0.0.0:445             0.0.0.0:*               LISTEN      5802/smbd           
tcp        0      0 0.0.0.0:139             0.0.0.0:*               LISTEN      5802/smbd 

客户端设置

首先要确保服务器和客户端可以通信,之后访问共享服务
Windows+R调运行窗口,输入\192.168.100.101,回车
在这里插入图片描述

可以看到共享文件夹
在这里插入图片描述

进去创建一个文件夹,可以在服务器上看到
在这里插入图片描述
在服务器上可以看到

[[email protected] ~]# cd /opt/aaa
[[email protected] aaa]# ls
02.txt  03.txt
[[email protected] aaa]# ls -lh 02.txt                  ##查看文件信息,系统中是由nobody这个用户和组的
-rw-r--r--. 1 nobody nobody 0 7月  18 12:51 02.txt

实验二:用户身份验证登录访问(请先完整看完实验2过程有问题)

服务器配置

修改刚刚的配置文件

[global]
        workgroup = SAMBA
        security = user
#        map to guest = Bad user  ##注释掉上个实验添加的,设置匿名访问,centos7不支持设置成security =share

        passdb backend = tdbsam

        printing = cups
        printcap name = cups
        load printers = yes
        cups options = raw

...省略部分内容
[share]                     ##设置共享文件
        path=/opt/aaa      ##路径
        public = yes         ##公共访问
        browseable = yes     ##可看
        writable = yes         ##可写
        create mask =0644     ##给上传文件权限
        directory mask =0755   ##给上传目录权限
[test]
        path=/opt/test     ##路径
        browseable = yes     ##可看
#        writable = yes         ##可写
        create mask =0644     ##给上传文件权限
        directory mask =0755 
        valid users = zhangsan, lisi   ##添加用户可访问
        write list = zhangsan      ##只有张三可以创建文件

用上面的配置文件,在后面访问验证的时候,我出现了可以登录服务但是无法访问bbb文件显示以下问题
在这里插入图片描述

由于反复尝试,所以有些文件名会不对,但是问题是这样

检查纠结了一番,没发现什么问题,我就使用了另一份配置文件,在/etc/samba/下有配置样例smb.conf.example,我过滤了里面的注释,把他改成了配置文件

[[email protected] ~]# cd /etc/samba/
[[email protected] samba]# ls
lmhosts  smb.conf  smb.conf.example
[[email protected] samba]# grep "^#" /etc/samba/smb.conf.example /etc/samba/smb.conf
[[email protected] ~]#vim  /etc/samba/smb.conf
[global]

        workgroup = MYGROUP
        server string = Samba Server Version %v

;       netbios name = MYSERVER

;       interfaces = lo eth0 192.168.12.2/24 192.168.13.2/24
;       hosts allow = 127. 192.168.12. 192.168.13.
...省略部分内容

        security = user        ###这里
        passdb backend = tdbsam
        map to guest = Bad user   ###上个实验设置的

;       security = domain
;       passdb backend = tdbsam
在结尾添加
[test]                           
        path = /opt/test
        browseable = yes
#       writable = yes
        create mask = 0644
        directory mask = 0755
        valid users = zhangsan, lisi
        write list = zhangsan
#       hosts deny = 192.168.100. 10.0.0.  ##可以对主机进行限制,我没做,提下
保存退出
创建zhangsan和lisi用户后
[[email protected] ~]# mkdir /opt/test
[[email protected] ~]# chmod 777 /opt/test/
[[email protected] ~]# smbpasswd -a zhangsan
New SMB password:       ###输入密码
Retype new SMB password:
Added user zhangsan.
[[email protected] ~]# smbpasswd -a lisi
New SMB password:       ###输入密码
Retype new SMB password:
Added user lisi.
[[email protected] ~]# pdbedit -L     ##可查看samba下的用户
tom:1001:
zhangsan:1003:  ##
som:1002:
lisi:1004:       ##
[[email protected] ~]# 

在重新启动服务器samba服务前,可以在客户端,清空连接缓存
在这里插入图片描述
双方都在关下防火墙

[[email protected] ~]# systemctl restart smb     ###启动服务

到客户端去测试
window+r输入\192.168.100.101服务器地址,回车我们看到的界面如下,打开test时需要账户密码,输入zhangsan账户,就可以进去了
在这里插入图片描述
zhangsan用户可以创建文件
在这里插入图片描述
服务端可查看

[[email protected] ~]# cd /opt/test
[[email protected] test]# ls
zhangsan.txt      ##
[[email protected] test]# 

尝试lisi用户
清除zhangsan连接缓存,Windows中命令界面输入net use * /d后,再次连接服务器
在这里插入图片描述

lisi 用户不能创建文件,刚刚我们在配置文件中设置的限制
在这里插入图片描述

这个实验应该把配置文件中第一个实验的匿名访问那条语句去掉的

实验三:设置用户名映射

给服务器里的samba用户设置名字映射,客户端可使用别名进行登录,相当与用真名登录
服务器配置
我在samba配置文件路径/etc/samba/中没有看到别名映射文件,所以我自己创了一个smbusers

[[email protected] samba]# vim smbusers
zhangsan = t01         ##添加zhangsan 用户映射
[[email protected] samba]# ls
lmhosts  smb.conf  smb.conf.example  smbusers
[[email protected] samba]# vim smb.conf    ##修改配置文件
....省略部分内容
        max log size = 50

        security = user
        passdb backend = tdbsam
#       map to guest = Bad user       ###上个实验要是禁用这条就更好了
        username map = /etc/samba/smbusers    ##添加这句话,引入映射文件

;       security = domain
;       passdb backend = tdbsam
保存退出

清客户端连接缓存,重启服务

[[email protected] ~]# systemctl restart smb     ###启动服务

客户端测试
使用zhangsan映射t01
在这里插入图片描述
进来依旧是zhangsan
在这里插入图片描述

实验四:将客户机文件挂载到服务器上

客户机设置
创建E盘文件夹benet在文件夹中创建sb.txt文本文件写入内容
在这里插入图片描述
设置文件夹共享,右击文件夹->共享->共享,添加Guests
在这里插入图片描述
设置可以匿名访问Windows共享文件
右击我的电脑->管理->本地用户和组->用户,取消用户已禁用
在这里插入图片描述
策略设置
查找secpol.msc
在这里插入图片描述
用户权限分配->本地策略->用户权限分配->拒绝从网络访问这台计算机中,删除Guest在这里插入图片描述
用户权限分配->本地策略->安全选项->网络访问:本地账户的共享和安全模型,选择仅来宾
在这里插入图片描述
策略更新
命令界面输入gpupdate /force
在这里插入图片描述
服务器访问

[[email protected] /]# mkdir /ck      ##创建挂载目录
[[email protected] /]# ls
bin   ck   etc   lib    media  opt   root  sbin  sys  usr
boot  dev  home  lib64  mnt    proc  run   srv   tmp  var
[[email protected] /]# smbclient -L 192.168.100.200     ##访问客户机
Enter MYGROUP\root's password:                 ##输入root密码
  
	Sharename       Type      Comment
	---------       ----      -------
	ADMIN$          Disk      远程管理
	benet           Disk                             ##这就是我们创建的
	C$              Disk      默认共享
	E$              Disk      默认共享
	IPC$            IPC       远程 IPC
Reconnecting with SMB1 for workgroup listing.
do_connect: Connection to 192.168.100.200 failed (Error NT_STATUS_RESOURCE_NAME_NOT_FOUND)
Unable to connect with SMB1 -- no workgroup available
[[email protected] /]# mount.cifs //192.168.100.200/benet /ck        ###挂载到本地
Password for [email protected]//192.168.100.200/benet:  ******         ##输入密码
[[email protected] /]# df -Th                            ##查看挂载
文件系统                类型      容量  已用  可用 已用% 挂载点
devtmpfs                devtmpfs  1.9G     0  1.9G    0% /dev
tmpfs                   tmpfs     1.9G     0  1.9G    0% /dev/shm
tmpfs                   tmpfs     1.9G   13M  1.9G    1% /run
tmpfs                   tmpfs     1.9G     0  1.9G    0% /sys/fs/cgroup
/dev/mapper/centos-root xfs        46G  4.1G   42G    9% /
/dev/sda1               xfs      1014M  184M  831M   19% /boot
tmpfs                   tmpfs     378M  4.0K  378M    1% /run/user/42
tmpfs                   tmpfs     378M   28K  378M    1% /run/user/0
/dev/sr0                iso9660   4.4G  4.4G     0  100% /run/media/root/CentOS 7 x86_64
//192.168.100.200/benet cifs       30G   15G   16G   49% /ck
[[email protected] /]# cd /ck          
[[email protected] ck]# ls
sb.txt
[[email protected] ck]# cat sb.txt      ##查看内容
sbsbsbsbsbsbsbsbsb[[email protected] ck]# cp sb.txt /opt    ##复制到本地
[[email protected] ck]# ls /opt
sb.txt  test
[[email protected] ck]# 
版权声明:本文为weixin_42280882原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_42280882/article/details/107428655