简介:
cifis:CIFS(Common Internet File System)文件系统也称通用Internet文件系统,它使程序可以访问远程Internet计算机上的文件并要求此计算机的服务。
CIFS可以提供以下功能:
- 访问服务器本地文件并读写这些文件
- 与其它用户一起共享一些文件块
- 在断线时自动恢复与网络的连接
- 使用统一码文件名
Samba是在Linux和Unix系统上实现SMB协议的一个免费软件,提供CIFS(Common Internet File System)协议,由服务器及客户端程序构成,SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务
一、安装(环境配置)
服务器配置:
yum install samba samba-client samba-common -y
firewall-cmd --add-server=samba
setsebool -P samba_enable_home_dirs on
systemctl enable smb
systemctl start smb
客户端配置:
yum install samba-client -y
firewall-cmd --add-server=samba-client
二、cifs共享
服务器端:
指定smb用户(只能是系统存在的用户)
smbpasswd -a westos #设置密码为smb登陆密码,和系统用户密码无关。
客户端:链接
smbclient -L //172.25.254.101/ #查看信息共享信息
smbclient -L //172.25.254.101/ -U westos #登陆用户westos
smbclient //172.25.254.101/westos -U westos #登陆用户westos分享的westos目录
- 登陆地点为服务器westos用户家目录,为cifs格式,的disk。可以挂载
- 登陆上!ls 查看本地可上传的文件(只能上传本地pwd(当前目录)下的文件)
- ls查看服务器硬盘文件。
查看:
登陆:
上传文件:
挂载cifs(挂载后就能使用了)
- mount //172.25.254.101/westos /mnt -o username=westos,passwork=lee #挂载到本地,
- 刚才上传的文件:
自动挂载
- /etc/fatab文件 挂载命令
//172.25.254.101/westos /mnt cifs defaults,username=westos,password=lee 0 0
- /etc/rc.local 挂载脚本
mount -t cifs //172.25.254.101/westos /mnt/ -o username=westos,password=lee
三、配置文件
/etc/samba/smb.conf
- workgroup = westos #smb域名称
- hosts allow 172.25.254.101 #白名单,其他用户默认在黑名单
- hosts deny 172.25.254.101 #黑名单,其他用户默认在白名单
共享自定义目录:/smbshare
配置文件配置:
更改安全上下文:
登陆成功:
----------------------
共享系统目录[mnt]
- 由于不建议修改系统目录的安全上下文,所以打开sebool开关
配置文件配置:
打开sebool 开关
共享成功:
登陆成功:
-------------------
目录的功能设定:
- comment= westos smb ##信息
- path= /smbshare ##路径
- browseable=yes ##是否被浏览
- writable=no ##是否可写
- write list = @westos ##制定westos用户可写
- admin users =westos ##设置目录管理用户,(用westos用户登陆,在该目录下有root权限)
chmod 777 /smbshare ##设置本地文件权限
例:
westos用户可写且有管理员权限
chmod 777 /smbshare ##设置本地文件权限
systemctl restart smb #重启服务
客户端登陆:
--------------------
多用户挂载
- 多用户挂载就是root用户挂载的cifs只能root访问。其他系统用户访问时需要账号密码验证,
yum install cifs-utils -y #安装cifs插件
创建登陆信息文件
vim /root/smbpass
mount -o credentials=/root/smbpass,sec=ntlmssp,multiuser //172.25.254.101/smbshare /mnt/ #挂载
- credentials=/root/smbpass 登陆信息文件
- sec=ntlmssp 加密方式
- multiuser 挂载类型,多用户。
其他用户验证方式:
- cifscreds add -u westos 172.25.254.101 #添加验证
- cifscreds clearall ##清理验证信息(验证失败后需清理)
- 验证后就能访问挂载的目录了。
匿名登陆
- map to guest = bad user #其他用户映射到guest
配置信息:允许/smbshare目录匿名登陆
查看:
/smbshare匿名登陆成功,/mnt不能匿名登陆(没设置允许匿名登陆)
匿名挂载:
mount //172.25.254.101/smbshare /mnt/ -o username=guest,passwoed=''