一、Samba服务概述
在Windows网络环境中、机之间进行文件打印和共享是通过微软自己的SMB/CIFS协议来实现的、SMB(服务消息块)和CIFS(通用互联网文件系统)这两个都是微软的私有协议
而Samba它在Linux中实现了微软的SMB/CIFS网络协议、从而使得跨平台的文件共享变得更加容易、SMB也是基于C/S架构的、所以它既可以充当文件共享服务器、也可以充当客户端
1)Samba软件包组成
在CentOS7中可以找到几个关于Samba的软件包、默认已经安装了客户端 samba-client和服务端samba
[root@node1 ~]# rpm -qa | grep samba samba-client-libs-4.7.1-6.el7.x86_64 #客户端软件 samba-common-libs-4.7.1-6.el7.x86_64 #所需要的库 samba-common-4.7.1-6.el7.noarch #提供服务端与客户端程序的公共组件
2)Samba程序组件
Samba服务提供smbd、nmbd两个服务程序、它们分别完成不同的功能
smbd:负责为客户端提供服务器中共享资源的访问 nmbd:负责提供基于NetBIOS协议的主机名称解析
安装好samba软件之后、系统会自动添加名为smb和nmb的标准系统服务、使用netstat 可查看监听端口
smbd负责监听TCP协议的139端口(SMB协议)、445端口(CIFS协议)、nmbd负责监听UDP协议的137-138端口(NetBIOS)
二、Samba部署及配置文件说明
1)Samba部署
提示:安装Samba时我们可以使用yum的方式来安装、同时也可以去官网下载最新的源码包来进行安装
[root@node1 ~]# yum -y install samba* [root@node1 ~]# systemctl enable smb [root@node1 ~]# systemctl enable nmb [root@node1 ~]# systemctl start smb [root@node1 ~]# systemctl start nmb tcp 0 0 0.0.0.0:445 0.0.0.0:* 1861/smbd tcp 0 0 0.0.0.0:139 0.0.0.0:* 1861/smbd udp 0 0 0.0.0.0:137 0.0.0.0:* 1873/nmbd udp 0 0 0.0.0.0:138 0.0.0.0:* 1873/nmbd
2)Samba配置文件说明
Samba的主配置文件位于:/etc/samba/smb.conf
其中以#号打头的为注释、以;号打头的为配置样例、Samba的配置文件主要分为三个部分、如下所示:
[global]全局设置: #此配置项对整个Samba服务器都有效 [homes]宿主共享设置: #设置用户的默认共享 对应用户宿主目录 [printers]打印机共享: #如果我们需要共享打印机设备、可在此项设置
3)Samba的常见配置项说明
workgroup: #设置工作组名称 server string: #设置服务器介绍信息 comment: #设置共享目录说明信息 path: #设置共享目录的位置 browseable: #设置网上邻居是否课件 guest ok: #是否所有人可以访问共享目录 与public作用相同 writable: #是否所有人可以写入、与 read only 配置项作用相反 max log size = 60: #定义日志的最大容量为60KB passwd backend: #共享账户文件类型、默认使用tdbsam log file = path/log.%m: #设置日志文件的位置 %.m 表示客户端的IP security: #设置Samba的安全验证方式 可设置为:user、share、server、domain share: 可匿名访问 user: 由本地服务器验证用户名及密码 domain:由域控制器来验证用户名和密码 server:指定另一台服务器来验证用户名及密码
【只是为了打发时间】