2022-12-28 01:03:57 发布人:hao333 阅读( 8623)
Samba是一套使用SMB(ServerMessageBlock)协议的应用程序,通过支持这个协议,Samba允许Linux服务器与Windows系统之间进行通信,使跨平台的互访成为可能。
Samba是一组使用SMB(服务器消息块)协议的应用程序。通过支持这个协议,Samba允许Linux服务器和Windows系统之间的通信,使得跨平台的相互访问成为可能。Samba是在Linux和Unix上实现SMB(服务器消息块)协议的免费软件,由服务器和客户端程序组成。
Samba采用C/S模式,其工作机制是NetBIOS(Windows网络邻居的通信协议)和SMB运行在TCP/IP通信协议之上,NetBEUI协议使Windows能够浏览“网络邻居”中的Linux服务器。
samba服务的搭建
客户使用的系统不同也会导致测试结果不同。
linux系统客户端:
安全性=用户或共享
共享目录可以在sm client-l//192 . 168 . 7 . 113/westos中看到,
不同之处在于,当安全性=用户
[root @ red hat samba]# SMB client//192 . 168 . 7 . 113/westos
输入root的密码:
匿名登录成功//系统提示登录samba服务成功,但访问westos的共享目录失败。匿名用户也是用户。
domain=[my domain]OS=[Unix]Server=[Samba 3 . 5 . 10-125 . el6]
树连接失败:NT_STATUS_access_DENIED
安全=份额
[root @ red hat samba]# SMB client//192 . 168 . 7 . 113/westos
输入root的密码:
domain=[my domain]OS=[Unix]Server=[Samba 3 . 5 . 10-125 . el6]
服务器没有使用用户级安全性,也没有提供密码。//不是服务的有效用户。虽然安全=共享,但需要密码登录。相当于samba服务访问,但是都没有成功。
树连接失败:NT_STATUS_WRONG_PASSWORD
win的测试:
安全=份额
当我们访问samba服务时,我们直接登录,但当我们访问目录时,我们要求输入密码。
当security=user时,访问samba服务时,会开始要求输入密码,没有密码就不会访问。
没有这种感觉,linux和win的测试好像是相反的,只是颠倒了而已。
Linux系统
当Public=yes时:
安全性=用户或共享
匿名用户登录将会成功。
[root @ red hat samba]# SMB client//192 . 168 . 7 . 113/westos
输入root的密码:
匿名登录成功
domain=[my domain]OS=[Unix]Server=[Samba 3 . 5 . 10-125 . el6]
中小企业:\ ^C
[root @ red hat samba]# vim/etc/samba/SMB . conf
[root @ red hat samba]#/etc/init . d/SMB restart
正在关闭SMB服务:[正常]
正在启动SMB服务:[好]
[root @ red hat samba]# SMB client//192 . 168 . 7 . 113/westos
输入root的密码:
domain=[my domain]OS=[Unix]Server=[Samba 3 . 5 . 10-125 . el6]
服务器没有使用用户级安全性,也没有提供密码。
中小企业:\ ^C
win客户端:
当Public=yes时:
安全=份额
匿名用户不需要密码用户名,直接登录成功,访问共享目录也不需要密码用户名。
当Public=yes时:
安全性=用户
访问samba时会直接要求输入用户名、密码,登录不成功,更别说看到共享目录了。
比较:
也就是说,当Public=yes: linux客户端可以访问共享目录,不考虑security=user ro share。与此无关。只有当client security=share时,匿名用户才有权访问共享目录。
Samba的几个主要配置文件(/etc/samba)
smb.conf:最重要的配置文件分为两部分:[全局]和[共享定义]。
lmhosts:对应于该主机的NetBIOS名称和IP。一般情况下,Samba在启动时可以捕获局域网内相关计算机的NetBIOS名称对应的IP。因此,通常不需要设置该配置文件。
smbpasswd:默认情况下,此文件不存在。是Samba预置的用户密码对应表。
Samba的几个主要命令
smbpasswd:用于设置Samba用户的帐号和密码。
smbclient:用于查看其他Linux主机的份额。您也可以在自己的Samba主机上使用它来检查设置是否成功。
smbmount:用于将Samba服务器共享的文档和目录挂载到它自己的Linux主机上。
testparm:用于检查smb.conf中的错误。
smb.conf的几个常用变量
客户端变量
-----------------------------------------------------------------------------
%a |客户端的体系结构(例如Samba、nt、Win98或Unknown)
%I |客户端的IP地址(例如:192.168.220.100)
%m |客户端的NetBios名称
%M |客户端的DNS名称
------------------------------------------------------------------------------
用户变量
------------------------------------------------------------------------------
%g | %u的基本组
%G | %U的基本组
%H | %u的主目录
%u |当前unix用户名
%U |请求的客户端用户名(不总是由samba使用)
------------------------------------------------------------------------------
共享变量
------------------------------------------------------------------------------
%p |如果与%p不同,则自动安装程序的路径对应于共享的根目录。
%P |当前共享的根目录
%S |但是上一个共享的名称
-------------------------------------------------------------------------------
服务器变量
-------------------------------------------------------------------------------
当前服务器进程的%d | ID
% h | Samba服务器的DNS主机名
% l | samba服务器的netbios名称
%N |主目录服务器,从自动装载映射
%v |桑巴版本
-------------------------------------------------------------------------------
其他变量
-------------------------------------------------------------------------------
%R |协商的SMB协议
%T |当前日期和时间
四种安全等级
security=share:用户访问Samba服务器不需要提供用户名和密码,安全性能较低。
security=user:Samba服务器默认的安全级别,每个共享目录只有特定用户可以访问,Samba服务器负责检查帐号和密码的正确性。
security=server:服务器安全级别,依靠其他Windows NT/2000或Samba服务器验证用户的帐号和密码,是一种代理验证。在这种安全模式下,系统管理员可以将所有Windows用户和密码集中在一个NT系统上,并使用Windows NT进行Samba身份验证。远程服务器可以自动验证所有用户和密码。如果认证失败,Samba将使用用户级安全模式作为替代。
security=domain:域安全级别,使用主域控制器(PDC)完成身份验证。
上一篇:环保黑科技小产品(十大环保产品)
下一篇:护眼又保健的黑科技发热眼罩
相关阅读
RelatedReading猜你喜欢
Guessyoulike