一、cifs文件系统和samba服务介绍
- CIFS协议
CIFS 是一个新提出的协议,它使程序可以访问远程Internet计算机上的文件并要求此计算机提供服务。CIFS 使用客户/服务器模式。客户程序请求远在服务器上的服务器程序为它提供服务。服务器获得请求并返回响应。CIFS是公共的或开放的SMB协议版本,并由Microsoft使用。SMB协议在局域网上用于服务器文件访问和打印的协议。像SMB协议一样,CIFS在高层运行,而不像TCP/IP协议那样运行在底层。CIFS可以看做是应用程序协议如文件传输协议和超文本传输协议的一个实现。 - samba服务
Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。SMB协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。通过设置“NetBIOS over TCP/IP”使得Samba不但能与局域网络主机分享资源,还能与全世界的电脑分享资源。
二、samba服务搭建
1.安装samba软件
在服务器端我们需要安装samba服务软件,也要安装samba-common软件,与其他软件不同,配置文件没有在提供samba服务的软件中,而是存放在公共文档中。
yum install samba-client.x86_64 samba-common.x86_64 samba.x86_64 -y
samba客户端 samba说明文档(存放该服务的配置文件) samba服务端
2.开启服务,打开功能开关
systemctl start smb
systemctl enable smb
systemctl stop firewalld
getsebool -a | grep samba
setseboot -P samba_enable_home_dirs on ##设置samba用户可以访问自己的家目录
3.创建共享目录,并修改安全上下文
mkdir /xing
ls -Zd /xing
semanage fcontext -a -t samba_share_t '/xing(/.*)?'
restorecon -RvvF /xing
由于该服务会受selinux加强型火墙的影响,为了使共享目录可以被其他人看到,我们需要将共享目录及子文件的安全上下文改为samba_share_t
三、samba用户创建
useradd westos
useradd lee
smbpasswd -a lee
smbpasswd -a westos
pdbedit -L ##用于查看用户是否创建
pdbedit -x student ##用户的删除
在使用samba服务时,我们需要创建samba用户,如果直接使用主机中已有的用户名和密码登录,会被拒绝。注意samba用户的建立是在已有用户的前提下建立的,也就是我们需要在系统中创建一个用户,然后将该用户设置为samba用户。