前言
SAMBA是一个开源的软件套件,用于在Linux和UNIX系统上实现SMB/CIFS网络协议。SMB(Server Message Block)是一种用于在计算机网络上共享文件、打印机和其他资源的协议。CIFS(Common Internet File System)是SMB协议的扩展版本,它提供了更高级的功能和安全性。
SAMBA可以将Linux/UNIX系统作为文件服务器和打印服务器,与Windows系统无缝集成,实现共享文件和打印机资源,并提供与Windows客户端的互操作性。通过SAMBA,Windows用户可以访问和操作Linux/UNIX系统上的共享文件和打印机,就像访问本地资源一样。
SAMBA还支持其他功能,如身份验证、目录访问控制、文件和目录共享的管理等。它提供了一套工具和库,可以用于配置和管理SAMBA服务器,包括smbd(SMB服务器守护进程)、nmbd(NETBIOS名称服务器守护进程)和smbclient(SMB客户端工具)等。
SAMBA具有广泛的应用领域,特别是在混合操作系统环境中。它可以帮助企业和个人搭建跨平台的文件共享和打印服务,提高工作效率和资源利用率。同时,SAMBA作为开源软件,也得到了全球开发者社区的广泛支持和不断更新,以适应不断变化的网络环境和用户需求。
一、概述
服务名smb
主程序smbd 实现文件共享
端口 TCP/139 TCP/445
nmbd 通过NetBIOS实现计算机名解析
二、安装
首先需要配置环境:关闭防火墙、NetworkManager、seliunx配置本地yum源配置IP这里我准备了2个虚拟机并且配置了IP
1)测试通联性
命令
yum -y install samba
它的主配置文件 /etc/samba/smb.conf
主配置文件解析
【global】 全局设置
workgroup=SAMBA 工作组
security=user 安全级别
user 本地用户验证,需要提供用户名密码
server 需要提供用户名密码,可指定其他主机进行身份验证
domain 需要提供用户名密码,可指定DC(域控制器)进行身份验证
【homes】 用户家目录的共享设置
comment 描述信息
readonly 只读
path 路径
write list 可写入的用户和组的列表
writeable 写入
public 所有人访问
【printers】 打印机共享设置
【print$】 自定义共享目录设置
【share】 自定义区域
3)客户端安装
yum -y install samba-client*
三、在SAMBA服务器中设置共享目录
1)我们在服务端创建一个目录在里面创建一个文件写入hello,world!作为共享文件
2)编辑主配置文件,在文末添加共享内容
vim /etc/samba/smb.conf
systemctl restart smb
重启服务
3)服务端设置SAMBA用户命令smbpasswd -a 用户名
四、客户端查看共享目录及登录
1)客户端查看共享目录 命令 smbclient -U 用户名 -L //服务器地址/共享目录名称
输入
smbclient -U hy -L //192.168.73.129/1.test
来查看一些目录信息
2)客户端登录SAMBA服务器smbclient -U 用户名 //服务器地址/共享目录名称
登录smbclient -U hy //192.168.13.129/share并下载1.txt
验证
五、本地映射
1)本地映射
打开电脑命令框
win+R访问
使用UNC路径
提示输入用户名密码
映射网络驱动器
映射成功
2)我们可以编辑我们的共享文件夹
修改我们共享文件夹的权限此时我们再电脑上编辑共享文件夹创建2.txt并写入“你好”
验证:我们回到sabma服务器查看共享文件夹
六、客户端自动挂载
1)打开客户端创建挂载点
mkdir /var/test
自动挂载格式: //服务器地址/共享目录名称 挂载点 cifs 挂载参数 0 0
vim etc/fstab
2)手动挂载格式
mount -t cifs -o username=a1,password=123 //服务器地址/共享目录名称 挂载点
七、用户别名
1)在服务器创建用户别名文件
vim /etc/samba/smbusers在里面写入samba用户=想要的用户(可以是多个)
2) 在主配置文件中声明开启别名
username map = /etc/samba/smbusers vim /etc/samba/smb.conf
3)保存,重启服务
4)验证:在客户端 使用别名登录samba服务器
八、访问控制
在主配置文件中的全区配置区域声明
hosts allow //允许个别,拒绝所有 hosts deny // 拒绝个别,允许所有 vim /etc/samba
此情况只允许用户hy登录其他用户无法登陆
此情况只有hy不能登陆