linux之cifs文件系统

什么是cifs

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

cifs用于实现windwos和linux之间文件的共享

什么是samb

用于实现cifs的软件

samb服务器的安装以及配置

yum install samba samba-client samba-common -y
##下载samba的客户端、常用命令、服务端
systemctl start smb ##启动samba服务
systemctl enable smb ##设置samba开机自启动
systemctl stop firewalld ##关闭防火墙
getsebool -a | grep samba ##查看samba有关的布尔值
setsebool -P samba_enable_home_dirs on ##设定samba用户可以访问自己的家目录
在这里插入图片描述

samba用户的管理

smbpasswd -a student ##student用户必须为本机用户
pdbedit -L ##查看
pdbedit -x student ##删除用户
在这里插入图片描述
在这里插入图片描述
客户端测试:
在这里插入图片描述

samba共享目录的设置

1、建立共享目录并设定
mkdir /sambashare
2、配置sbmba配置文件
vim /etc/samba/smb.conf

[共享名称]
comment = 共享说明
path = 共享目录
在这里插入图片描述
3、重启smb服务
4、由于selinux是开启的,所以需要配置安全上下文
在这里插入图片描述
客户端测试:

smbclient //192.268.181.141/共享目录 -U customer smbclient
//192.168.181.141/share -U customer
在这里插入图片描述
在这里插入图片描述

共享目录的IP和网段配置

挂载命令:
mount //ip/share /mnt/smb -o username=student,password=redhat

1、基于ip的配置
编辑配置文件
[share]
comment = share dir
path = /share
hosts allow = 192.168.181.141 ##只允许192.168.181.141主机挂载
在这里插入图片描述在这里插入图片描述
在未被授权的140上挂载是无法挂载的
2、基于网段的限制挂载
[share]
comment = share dir
path = /share
hosts deny = 192.168.181
在这里插入图片描述在这里插入图片描述
3、设置开机自动挂载
yum install cifs-utils.x86_64 -y
在这里插入图片描述
vim /etc/fstab
//192.168.181.141/share /mnt/smb cifs defaults,username=student,password=redhat 0 0
在这里插入图片描述
在这里插入图片描述

samba匿名访问

vim /wtc/samba/smb.conf 编辑配置文件
[share]
comment = share
path = /share
map to guest = bad user
guest ok = yes
在这里插入图片描述
测试:
在这里插入图片描述
在这里插入图片描述

samba共享目录的有关参数

writable = yes
##打开写权限 write list = +student
##对student组可写 write
list = student redhat
##对student、redhat用户可写 valid users =
student
##student可以挂载目录 valid users = @student ##student组可以挂载目录
browseable = no
##是否隐藏,no隐藏,yes不隐藏
admin users =customer ##共享目录添加管理员

扫描二维码关注公众号,回复: 9700427 查看本文章

设置用户可写

编辑配置文件
[share]
comment = share
path = /share
guest ok = yes
writable = yes ##打开写权限,设置后所有用户都可写

selinux的布尔值更改在这里插入图片描述

更改权限:chmod 777 /share
测试:
mount //192.168.181.141/share /mnt/smb/ -o username=customer,password=123
touch /mnt/smb/file
ls -l /mnt/smb/
在这里插入图片描述
对用户组可写
编辑配置文件:
在这里插入图片描述
在这里插入图片描述
再以其他用户身份挂载:
mount //192.168.181.141/share /mnt/smb/ -o username=test,password=" "
在这里插入图片描述

某些用户可以挂载共享目录

    [share]
    comment = share dir
    path = /share

; writable = yes
; write list = +customer
; write list = customer
valid users = customer ##可以加多个用户 用空格隔开
先用customer用户挂载:
在这里插入图片描述
再用未授权的用户挂载:
在这里插入图片描述
挂载之前先确保test用户不属于customer用户
在这里插入图片描述

是否隐藏该共享目录

    [share]
    comment = share dir
    path = /share
    browseable = no
    测试:可以看到共享目录被隐藏了

在这里插入图片描述
但是依旧是可以被挂载的
在这里插入图片描述

共享目录添加管理员

编辑配置文件
[share]
comment = share dir
path = /share
writable = yes
admin users = customer
使用customer用户挂载,root用户创建文件,可以看到文件的所有者为文件的创建者
在这里插入图片描述
在这里插入图片描述

多用户挂载

多用户挂载解决了客户端超级用户挂载之后,该客户端的普通用户同时也可以访问共享目录内容的问题:
在这里插入图片描述
在这里插入图片描述
客户端:

管理员操作
yum install cifs-utils.x86_64 -y
在这里插入图片描述
建立共享目录认证文件
vim /root/passfile ##写入samba服务端的用户和密码,文件名称任意
在这里插入图片描述
给认证文件设置权限
chmod 600 /root/passfile
mount -o credentials=/root/passfile,multiuser,sec=ntlmssp //192.168.181.141/share /mnt
认证文件 说明挂载类型为多用户 默认参数
credentials=/root/passfile ##指定挂载的应乎文件
Multiuser ##支持多用
sec=ntlmssp ##认证方式为smb

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

发布了57 篇原创文章 · 获赞 0 · 访问量 1338

猜你喜欢

转载自blog.csdn.net/weixin_45674039/article/details/103027160