Linux中的CIFS协议与SMB协议

SMB协议Server Message Block

SMB 一种客户机/服务器、请求/响应协议。通过 SMB
协议,客户端应用程序可以在各种网络环境下读、写服务器上的文件,以及对服务器程序提出服务请求。此外通过 SMB
协议,应用程序可以访问远程服务器端的文件、以及打印机、邮件槽(mailslot)、命名管道(named pipe)等资源。

CIFS

客户程序请求远在服务器上的服务器程序为它提供服务。服务器获得请求并返回响应。CIFS是公共的或开放的SMB协议版本,并由Microsoft使用。SMB协议在局域网上用于服务器文件访问和打印的协议。像SMB协议一样,CIFS在高层运行,而不像TCP/IP协议那样运行在底层。CIFS可以看做是应用程序协议如文件传输协议和超文本传输协议的一个实现。

本实验可以使用windows做服务器去共享文件,由于环境原因,这里暂不演示。下面内容都是基于Linux系统。

Linux做服务器:
环境:配置网络,yum源配置,关闭火墙,selinux处于enforcing状态

yum search samba
yum install  samba.x86_64  
主配置文件 /etc/samba.conf
mkdir /westos      ###建立之后的共享目录 
semanage fcontext -a -t samba_share_t '/westos(/.*)?' 
  ###SELINUX在ENFORCING下使用【更改安全上下文】可以在smb.conf.example看到更改说明
restorecon -RvvF /westos/
vim /etc/samba.conf
	[LEE]       ###共享目录查询/可见名称 【在windows上查看的目录名】  
	path = /westos  ###共享目录
systemctl restart smb
systemctl enable smb
systemctl stop firewalld
useradd hahaha
smbpasswd -a hahaha     ###smb用户必须为本地存在的用户  【添加smb用户】

在这里插入图片描述
在这里插入图片描述
linux做客户端【测试pc】:

yum install samba-client.x86_64 -y
smbclient -L //172.25.254.100  ###列出服务端所共享的目录 
  ###匿名用户查看,没设置root密码,登陆时两次回车即可
smbclient //172.25.254.100/lee -U hahaha   ###登陆  ##只能ls查看
或者
挂载后可以使用【写】 【这里写不了,需要后续开启权力】
mount //172.25.254.100/lee /mnt -o username=hahaha,password=redhat
df
cd /mnt
ls

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

【smb用户管理:】

pdbedit -L   ###查看smb用户
smbpasswd -a user  ###添加用户
pdbedit -x user  ###删除smb用户

在这里插入图片描述

smb的一些配置参数:

vim /etc/samba/smb.conf
	comment = westos dir   ###说明
	browseable = no        ###隐藏,但可以使用
【smbclient //172.25.254.199/lee -U xyy】可以直接登陆使用
	valid users = xyy    ###只允许xyy去登陆访问
	valid users = +xyy   ###xyy的组成员可以登陆【+可换为@】
	writable = yes     ###可写
	write list = xyy   ###只有xyy这个用户可写
	write list = @xyy  ###xyy组的用户可写
	guset ok = yes     ###匿名用户可以使用
	admin users = student    ###将student用户身份提升为超户    

匿名用户不能直接挂载,需要更改全局设定
125行写: map to guest = bad user ###让mount指令可以识别到guset用户,从而可以挂载
在这里插入图片描述
mount //172.25.254.199/lee /mnt -o username=guest
df

在这里插入图片描述
在这里插入图片描述
【browseable = no】
在这里插入图片描述
如何可写:
服务器:给可写的设置,并且将给共享目录可写的权力
在这里插入图片描述
在这里插入图片描述
测试端:
在这里插入图片描述

smb 多用户挂载:隐藏使用的用户和密码,并且谁挂载,谁可以使用和查看。让非挂载的人看不到

客户端:

yum install cifs-utils -y
vim /root/smbauth
username=lee
password=lee
chmod 600 /root/smbauth
mount //172.25.254.200/lee /mnt -o credentials=/root/smbauth
###挂载的时候隐藏了密码和登陆用户 【history看不到】【原始验证】【文件中指定了登陆的用户和密码】

在这里插入图片描述
在这里插入图片描述
uname -r ###查看内核版本
mount //172.25.254.200/lee /mnt -o credentials=/root/smbauth,sec=ntlmssp,multiuser ###sec=ntlmssp提供密码验证支持 ###
cd /mnt
ls ###可以查看
su 切换一个用户
ls ###无法查看
在这里插入图片描述
在这里插入图片描述

cifscreds add -u westos 172.25.254.200   ###multiuser提供的身份支持  【验证】
密码正确就可以进入mnt,然后使用
cifscreds clear -u user ip   ###清楚用户记录
cifscreds update -u user ip  ###更新
touch file  ###产生的文件实际上是服务器上的用户身份

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


                            大大的小小阳
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值