samba局域网共享文件实验

一、samba概述

Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。

在此之前我们已经了解了NFS,NFS与samba一样,也是在网络中实现文件共享的一种实现,但不幸的是,其不支持windows平台,而这次要提到的samba是能够在任何支持SMB协议的主机之间共享文件的一种实现,当然也包括windows。

SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。

SMB协议是C/S型协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。

二、samba配置实例

开启一台centos7.6,,一台win7,均设置DHCP自动获取ip地址,centos作为服务器,共享文件或目录,IP地址为192.168.100.8

[root@promote ~]# setenforce 0  关闭防火墙服务,清空防火墙规则
[root@promote ~]# iptables -F
[root@promote ~]# systemctl stop firewalld.service 

[root@promote ~]# yum install samba -y  安装samba包
[root@promote ~]# rpm -qc samba
/etc/openldap/schema/samba.schema
/etc/pam.d/samba
[root@promote ~]# cd /etc/samba/
[root@promote samba]# ls
lmhosts  smb.conf  smb.conf.example   有samba.conf的配置文件
[root@promote samba]# ls              准备备份配置文件,以防操作失误
lmhosts  smb.conf  smb.conf.example
[root@promote samba]# mv smb.conf smb.conf.bak
[root@promote samba]# ls
lmhosts  smb.conf.bak  smb.conf.example
[root@promote samba]# grep -v "#" smb.conf.bak > smb.conf  
[root@promote samba]# ls
lmhosts  smb.conf  smb.conf.bak  smb.conf.example

修改配置文件内容,实现匿名用户的读取和写入
在这里插入图片描述
在这里插入图片描述
在opt目录下创建abc文件,并且赋予777最大权限

[root@localhost samba]# mkdir /opt/abc
[root@localhost samba]# chmod 777 /opt/abc

开启samba服务,139端口,445端口开启
在这里插入图片描述
在win 7客户机中访问192.168.100.8服务器
在这里插入图片描述
随便写一个txt文件
在这里插入图片描述
回到服务器端查看新生成的文件
在这里插入图片描述
在这里插入图片描述

指定用户读写共享文件的权限,在配置文件底行加入内容
在这里插入图片描述

创建zhangsan和lisi用户并给他们设置smb密码

[root@promote abc]# useradd zhangsan
[root@promote abc]# useradd lisi
[root@promote abc]# smbpasswd -a zhangsan
New SMB password:
Retype new SMB password:
Added user zhangsan.
[root@promote abc]# smbpasswd -a lisi
New SMB password:
Retype new SMB password:
Added user lisi.
[root@promote abc]# pdbedit -L    查看smb用户
zhangsan:1001:
lisi:1002:

在opt目录下创建test目录,并给其权限

[root@localhost opt]# mkdir test
[root@localhost opt]# chmod 777 test/

回到客户端,清空缓存;服务端重启服务
在这里插入图片描述
重启smb服务

[root@localhost opt]# systemctl restart smb

再次登录共享目录,输入刚才新建的smb用户和对应的密码
在这里插入图片描述
多了的lisi和zhangsan目录是自动生成的(因为smb配置文件中写好了自动生成的脚本)
在这里插入图片描述
在客户端的test文件中写一个222文件,回到服务端查看是否生效

在这里插入图片描述

返回客户端,这时用lisi身份尝试写入文件发现写入失败,权限不够

在这里插入图片描述
服务端解锁guest来宾用户

在这里插入图片描述

打开win系统中的本地策略,按照步骤配置
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

进行文件夹共享
在这里插入图片描述

从centos访问

[root@localhost /]# smbclient -L 192.168.100.8
Enter SAMBA\root's password: 

	Sharename       Type      Comment
	---------       ----      -------
	ADMIN$          Disk      远程管理
	C$              Disk      默认共享
	D$              Disk      默认共享
	F$              Disk      默认共享
	IPC$            IPC       远程 IPC
	samnet          Disk      
Reconnecting with SMB1 for workgroup listing.
do_connect: Connection to 192.168.100.8 failed (Error NT_STATUS_RESOURCE_NAME_NOT_FOUND)

[root@localhost /]# mount.cifs //192.168.100.8/samnet /gz
Password for root@//192.168.100.8/samnet:  
[root@localhost /]# df -Th
文件系统                类型      容量  已用  可用 已用% 挂载点
/dev/mapper/centos-root xfs        50G  6.9G   44G   14% /
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/sda1               xfs      1014M  181M  834M   18% /boot
/dev/mapper/centos-home xfs       245G   33M  245G    1% /home
tmpfs                   tmpfs     378M  4.0K  378M    1% /run/user/42
tmpfs                   tmpfs     378M   48K  378M    1% /run/user/0
/dev/sr0                iso9660   4.3G  4.3G     0  100% /mnt
//20.0.0.12/samnet      cifs      200G   96M  200G    1% /gz
 挂载成功
 [root@localhost /]# cd gz
[root@localhost gz]# ls
shangchuan.txt
[root@localhost gz]# cat shangchuan.txt 
֢oˇwindows 7 µŎļþ    #编码原因
[root@localhost gz]# 

猜你喜欢

转载自blog.csdn.net/weixin_47151650/article/details/107568882