Linux网络服务-SAMBA
1. Samba 概述
SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同操作系统的计算机之间提供文件及打印机等资源的共享服务。SMB 协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。如图:
为什么要讲 SAMBA?
ftp 的优缺点:
优点:文件传输、应用层协议、可跨平台
缺点:只能实现文件传输,无法实现文件系统挂载;无法直接修改服务器端文件
Samba 的特性:
使用 smb/cifs 协议、可跨平台、可实现文件系统挂载、可实现服务器端修改文件
注意:
ftp和Samba用的用户都是来自passwd(/etc/passwd),ftp用的密码是shadow(/etc/shadow),Samba用的密码是passdb.tdb(/var/lib/samba/private/passdb.tdb)。
smb 协议和 cifs 之间的关系
随着 Internet 的流行,Microsoft 希望将这个协议扩展到 Internet 上去,成为 Internet 上计算机之间相互共享数据的一种标准。因此它将原有的几乎没有多少技术文档的 SMB协议进行整理,重新命名为 CIFS(Common Internet FileSystem),它使程序可以访问远程 Internet 计算机上的文件并要求此计算机提供服务。客户程序请求远在服务器上的服务器程序为它提供服务。服务器获得请求并返回响应。CIFS 是公共的或开放的 SMB 协议版本,并由 Microsoft 使用。
SMB 协议在局域网上用于服务器文件访问和打印的协议。
2. Samba 服务详解
Samba 软件相关信息
1. 协议:SMB/CIFS
2. 服务:
smb 实现资源共享、权限验证 TCP 139 445
3. 配置文件(/etc/samba/)
smb.conf 主配置文件
smbusers 别名配置文件
登录验证模式(安全级别)
◆ share 匿名验证
◆ user 本地用户验证(Samba服务器默认的安全级别,用户在访问共享资源之前必须提供用户名和密码进行验证)
拓展:tdbsam:该方式是使用一个数据库文件来验证。数据库文件叫passdb.tdb。可以通过pdbedit -a 向数据库中添加新用户,不过要建立的Samba用户必须先是系统用户。也可以理解为我们使用pdbedit -a 将系统用户转化为了samba用户。pdbedit命令的参数很多,列出几个主要的。
pdbedit -a username:新建Samba账户(将系统用户转化为samba用户,并设置密码)
pdbedit -x usern