1、基本概念:
CIFS是实现文件共享服务的一种文件系统,主要用于实现windows系统中的文件共享,linux系统中用的比较少linux系统中利用CIFS文件系统实现文件共享,需要安装samba服务。它使程序可以访问远程Internet计算机上的文件并要求此计算机提供服务。CIFS 使用客户/服务器模式。客户程序请求远在服务器上的服务器程序为它提供服务。服务器获得请求并返回响应。CIFS是公共的或开放的SMB协议版本,并由Microsoft使用。SMB协议在局域网上用于服务器文件访问和打印的协议。像SMB协议一样,CIFS在高层运行,而不像TCP/IP协议那样运行在底层。CIFS可以看做是应用程序协议如文件传输协议和超文本传输协议的一个实现。
CIFS 可以使您达到以下功能:
1.访问服务器本地文件并读写这些文件
2.与其它用户一起共享一些文件块
3.在断线时自动恢复与网络的连接
4.使用统一码(Unicode)文件名:文件名可以使用任何字符集,而不局限于为英语或西欧语言设计的字符集。
2、安装smb服务(在要做服务器的主机安装samba-common.x86_64 服务器软件和samba的客户端)
yuminstall samba-common.x86_64 samba.x86_64 samba-client -y ---安装服务
smbclient-L //172.25.254.220 -----匿名用户登陆
smbpasswd -a xxx -------创建用户(这个用户必须是主机上拥有的用户,否则无效)
smbclient-L //172.25.254.220/student -U student ---student用户登陆(此时可以查看到自己已经存在于smb中)
getsebool-a | grep samba ---查看sebool
setsebool -P samba_enable_home_dirs on ---关闭samba用户访问目录限制
smbclient //172.25.254.220/student -U student ---student用户登陆(L是列出的意思,如果说要以wjl的身份去登陆并且进行操作,就不用这个参数)
进入目录后可以查看。
主配置文件 /etc/samba/smb.conf
89workgroup = xxx ---改组名
93hosts allow = 172.25.254.139 ---白名单
94hosts deny = 172.25.254.139 ---黑名单
先建立白名单,此时之允许172.25.254.120登陆
172.25.254.120成功挂载并且能够操作,但是172.25.254.220登陆失败!
黑名单,修改之后名单上的主机不能操作:
172.25.254.220主机以wjl身份成功登陆,并且看到了修改后的LBJGROUP 组名。
172.25.254.120挂载失败:
新建共享文件夹:
321[DATA] ---共享文件夹名,名字任意随意
comment= xxxx data ---数据类型
path= /xxx ---路径
由于selinux的存在,我们必须改变这个/xxx这个文件夹的安全上下文:
可以成功登陆并查看:
172.25.254.220主机
172.25.254.120主机。
匿名登陆:修改配置文件:
成功登陆:
制定用户可写操作:
如果要制定用户可以进行写操作,首先必须保证服务器端对应的/QQ文件夹要有相应的权限。然后在主配置文件中添加writable=yes后在添加 write list = xxx;
browseable = yes ----共享是否可见
validusers =student ---仅student用户可以使用共享服务
此时只对设定用户提供可读取服务:
在客户端设置如下:没设置之前只要root用户挂载,切换身份之后其他用户也是可见的,设置后,其他用户不可见
yuminstall cifs-utils -y --------下载cifs-util
mount-o credentials=/root/smbfile,multiuser,sec=ntlmssp//172.25.254.220/DATE/mnt
---multiuser多用户模式,
sec=ntlmssp认证方式
credentials=/root/smbfile用smbfile文件下的用户身份登陆
要记得给/root.smbfile文件夹改为600权限。