文章目录
1. samba服务简介
1.1 smb协议
smb(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同操作系统的计算机之间提供文件及打印机等资源的共享服务。SMB 协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。
1.2 cifs协议
随着 Internet 的流行,Microsoft 希望将 SMB 这个协议扩展到 Internet 上去,成为 Internet 上计算机之间相互共享数据的一种标准。因此它将原有的几乎没有多少技术文档的SMB协议进行整理,重新命名为CIFS (Common Internet File System),它使程序可以访问远程 Internet计算机上的文件并要求此计算机提供服务。客户程序请求远在服务器上的服务器程序为它提供服务。服务器获得请求并返回响应。CIFS 是公共的或开放的SMB 协议版本,并由 Microsoft 使用。SMB 协议在局域网上用于服务器文件访问和打印的协议。
1.3 ftp 服务 与 samba 服务对比
ftp 的优缺点:
优点:文件传输、应用层协议、可跨平台
缺点:只能实现文件传输,无法实现文件系统挂载;无法直接修改服务器端文件
Samba 的特性:
使用 smb/cifs 协议、可跨平台、可实现文件系统挂载、可实现服务器端修改文件
2. samba基本信息
- 协议:SMB/CIFS
- 软件名:smaba
- 服务:smb 实现资源共享、权限验证 TCP :139、445
- 配置文件(/etc/samba/)
– smb.conf 主配置文件
– smbusers 别名配置文件 - 安全上下文:samba_share_t
3. samba的安装与启用
samba服务对selinux要求比较高:
cat /etc/sysconfig/selinux
#SELINUX=enforcing
安装服务端、客户端、工具包:
dnf install -y samba samba-client samba-common
服务启动:
systemctl enable --now smb
服务启用:
firewall-cmd --permanent --add-service=samba
firewall-cmd --reload
测试:
smbclient -L //172.25.254.128
当要输入root密码时直接回车
4. samba用户的建立
- samba用户必须是在本地存在的用户
- samba用户的建立
smbpasswd -a lee #添加用户
pdbedit -L #查看用户列表
pdbedit -x lee #删除用户
5. samba服务共享目录
mkdir /westos #创建共享目录
semanage fcontext -a -t samba_share_t '/westos(/.*)?' #更改安全上下文
restorecon -RvvF /westos #刷新
vim /etc/samba/smb.conf #编写配置文件
[WESTOSDIR] #共享名称
comment = westos dir #共享说明
path = /westos #共享路径
6. samba用户访问家目录
当selinux开启时:
setsebool -P samba_enable_home_dirs on
在windows下:
\\172.25.254.128 #访问
net use #查看访问记录
net use * /del #删除访问记录
在linux下:
smbclient //172.25.254