Centos部署Samba企业文件共享服务
|
Centos部署Samba企业文件共享服务 声明:本文参考了网上部分资料加作者实验总结 目录: 1、Samba服务概述: 1.1、Samba的原理 1.2、NETBIOS协议 2、Samba 应用环境 3、samba服务 3.1、samba的安装包: 3.2、samba的进程文件: 3.3、samba的文件: 4、主要配置文件smb.conf 4.1、samba配置简介 4.2、Global Settings 4.2.1)设置工作组或域名称 4.2.2)服务器描述 4.2.3)设置samba服务器安全模式 4.3、Share Definitions共享服务的定义 4.3.1)设置共享名 4.3.2)共享资源描述 4.3.3)共享路径 4.3.4)设置匿名访问 4.3.5)设置访问用户 4.3.6)设置目录只读 4.3.7)设置目录可写 5、配置一个共享资源 6、samba的命令与客户端访问 6.1、testparm:测试有效的exports内的属性 6.2、pdbedit:管理smb的用户数据库 6.3、smbpasswd:改变samba账户的密码 6.4、smbclient:unix客户端访问工具 6.5、挂载访问 7、samba搭建实例 7.1、smb服务端搭建 8、修改配置文件,实战举例 8.1、例1:匿名共享 8.2、例2:通过用户名和密码共享文件。把/sales 共享出去,只有知道用户名和密码的同事可以看这个共享 9、扩展参数 9.1、客户端访问控制 9.2、设置Samba 的权限,允许sales组可以写 10、使用GUI工具SWAT管理samba 1、Samba服务概述: samba是基于smb(Server Message Block)协议的一种实现方式。Samba 最先在Linux 和Windows 两个平台之间架起了一座桥梁,正是由于Samba 的出现,我们可以在Linux 系统和Windows 系统之间互相通信,比如拷贝文件、实现不同操作系统之间的资源共享等 等,我们可以将其架设成一个功能非常强大的文件服务器,也可以将其架设成打印服务器提 供本地和远程联机打印。 1.1、Samba的原理
1.SMB是基于NetBIOS的一个网络文件共享协议,允许cilent从服务器端访问文件资源。 2.NetBIOS协议是一个用来让局域网内的主机互相连接的通讯协议,被广泛用于windows平台间的通信。 3.samba就是基于smb开发的,让unix主机能够通过mbr协议与windows平台进行文件共享。 1.2、NETBIOS协议 NetBIOS是Network Basic Input/Output System的简称,网络基本输入/输出系统协 议。协议,一般指用于局域网通信的一套API,是由IBM公司开发。主要作用:通过 NETBIOS协议获得计算机名称,然后把计算机名解析为对应IP地址。 模式: C/S 模式 2、Samba应用环境 文件和打印机共享:文件和打印机共享是Samba的主要功能,SMB进程实现资源共享,将文件和打印机发布到网络之中,以供用户可以访问哈。 身份验证和权限设置:smbd服务支持usermode和domainmode等身份验证和权限设置模式,通过加密方式可以保护共享的文件和打印机。 名称解析:Samba通过nmbd服务可以搭建NBNS(NetBIOSNameService)服务器,提供名称解析,将计算机的NetBIOS名解析为IP地址。 浏览服务:局域网中,Samba服务器可以成为本地主浏览服务器(LMB),保存可用资源列表,当使用客户端访问Windows网上邻居时,会提供浏览列表,显示共享目录、打印机等资源。 3、samba服务 3.1、samba的安装包: sambasamba服务器端程序。 libsmbclientsamba客户端库文件。 samba-clientsamba客户端程序。 samba-commonsamba客户端以及服务端都会用到的文件,如samba.conf等。 samba-winbindsamba对于windows域的支持的服务端的库。 samba-winbind-clientssambawindwos域的客户端。 3.2、samba的进程文件: nmbd:负责管理工作组,NetBIOS名解析,并提供浏览服务显示网络上的共享资源列表。工作在UDP的137,138端口上。 smbd:其主要功能就是用来管理Samba服务器上的共享目录、打印机等,主要是针对网络上的共享资源进行管,工作在TCP的139或445端口上。 3.3、samba的文件: /etc/samba/smb.confsamba的主要配置文件。 /etc/samba/smbusers共享服务中,linux与windows的账号的映射,格式为linuxuser=windowsuser1,windowsuser2 /var/lib/samba/private/passdb.tdb/secrets.tdbsamba用户账号密码存放的数据 库。 4、主要配置文件smb.conf 4.1、samba配置简介 smb.conf文件的开头部分为samba配置简介,告诉我们smb.conf文件的作用及相关信息。 smb.conf中以“#”开头的为注释,为用户提供相关的配置解释信息,方便用户参考,不用修改它哈。 smb.conf中还有以“;”开头滴,这些都是samba配置的格式范例,默认是不生效滴,可以通过去掉前面的“;”并加以修改来设置想使用的功能。 4.2、Global Settings Global Settings设置为全局变量区域。那什么是全局变量哈?全局变量就是说我们只要在global时进行设置,那么该设置项目就是针对所有共享资源生效滴。这与以后我们学习的很多服务器配置文件相似哈。 该部分以[global]开始: smb.conf配置通用格式,对相应功能进行设置:字段=设定值 下面我们说下[global]常用字段及设置方法: [global] [network] workgroup=MYGROUP#工作组名称,要与windows的工作组名称一致。 serverstring=SambaServerVersion%v#samba服务器描述 ;netbiosname=MYSERVER ;interfaces=loeth0192.168.12.2/24192.168.13.2/24#设置监听 的网卡 ;hostsallow=127.192.168.12.192.168.13.#设置可以访问的网段 [login] logfile=/var/log/samba/log.%m#日志文件路径。 maxlogsize=50#一个日志文件最大多少Kb进行轮替。 [独立服务器设定StandaloneServer] security=user|share|domain#安全认证方式 share:#共享模式 user:#使用samba服务器的密码库 domain:#使用外部域服务器的密码。 passdbbackend=tdbsam#密码库格式。 1)设置工作组或域名称 工作组是网络中地位平等的一组计算机,可以通过设置workgroup字段来对samba服务器所在工作组或域名进行设置。 我们设置samba服务器的工作组为CentOS 2)服务器描述 服务器描述实际上类似于备注信息哈,在一个工作组中,可能存在多台服务器,为了方便用户浏览,我们可以在server string配置相应描述信息,这样用户就可以通过描述信息知道自己要登录哪台服务器了啊~ 我们设置samba描述信息为“CentOSFile Server”。 3)设置samba服务器安全模式 samba服务器有share、user、server、domain和ads 五种安全模式,用来适应不同的企业服务器需求。 (1)share安全级别模式 客户端登录samba服务器,不需要输入用户名和密码就可以浏览samba服务器的资源,适用于公共的共享资源,安全性差,需要配合其他权限设置,保证samba服务器的安全性。 (2)user安全级别模式 客户端登录samba服务器,需要提交合法帐号和密码,经过服务器验证才可以访问共享资源,服务器默认为此级别模式。 (3)server安全级别模式 客户端需要将用户名和密码,提交到指定的一台samba服务器上进行验证,如果验证出现错误,客户端会用user级别访问。 (4)domain安全级别模式 如果samba服务器加入windows域环境中,验证工作服将由windows域控制器负责,domain级别的samba服务器只是成为域的成员客户端,并不具备服务器的特性,samba早期的版本就是使用此级别登录windows域滴。 (5)ads安全级别模式 当samba服务器使用ads安全级别加入到windows域环境中,其就具备了domain安全级别模式中所有的功能并可以具备域控制器的功能。 4.3、Share Definitions共享服务的定义 Share Definitions设置对象为共享目录和打印机,如果我们想发布共享资源,需要对Share Definitions部分进行配置。Share Definitions字段非常丰富,设置灵活。 我们先来讲下几个最常用的字段哈~ 1)设置共享名 共享资源发布后,必须为每个共享目录或打印机设置不同的共享名,给网络用户访问时使用,并且共享名可以与原目录名不同。 共享名设置非常简单:[共享名] 我们来看个例子,Samba服务器中有个目录为/share,需要发布该目录成为共享目录,定义共享名为public 2)共享资源描述 网络中存在各种共享资源,为了方便用户识别,可以为其添加备注信息,以方便用户查看时知道共享资源的内容是什么哈。 格式:comment = 备注信息 举个例子哈,samba服务器上有个/sales目录存放公司销售部的数据,为了对公司部门员工进行区分,可以添加备注信息。 3)共享路径 共享资源的原始完整路径,可以使用path字段进行发布,务必正确指定。 格式:path = 绝对地址路径 samba服务器上/share/tools目录存放常用工具软件,需要发布该目录为共享,我们可以这样做。 4)设置匿名访问 共享资源如果对匿名访问进行设置,可以更改public字段。 格式: public=yes#允许匿名访问 public=no#禁止匿名访问 samba服务器/share共享目录允许匿名用户访问,可以这样设置。 5)设置访问用户 如果共享资源存在重要数据的话,需要对访问用户审核,我们可以使用valid users字段进行设置哈~ 格式: validusers=用户名 validusers=@组名 我们来看下面一个例子哈,samba服务器/share/tech目录存放了公司技术部数据,只允许技术部员工和经理访问,技术部组为tech,经理帐号为gm 6)设置目录只读 共享目录如果限制用户的读写操作,我们可以通过readonly实现哈~ 格式: readonly=yes#只读 readonly=no#读写 samba服务器公共目录/public存放大量共享数据,为保证目录安全我们只允许读取,禁止写入哈~ 7)设置目录可写 (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |

