Samba服务
1. SMB协议:
SMB(Server Message Block)协议是微软和英特尔联合制定的协议,主要作为微软网络的通信协议(可以将它看作局域网中的文件和打印共享协议)。SMB协议工作于会话层表示层和一小部分的应用层,它使用了NetBIOS的应用程序接口(API)。另外,它是一个开放性的协议,允许协议扩展(这使得它变得庞大而复杂)。
为了让 Windows 和 Linux 计算机之间能相互访问,最好的办法是在 Limnux 中安装支持SMB 协议的软件,将SMB 协议搬到Linux 系统上使用,而samba 就是这样的一款软件。samba 采用客户机/服务器模式,我们可以在 Linux中架设 samba 服务器,实现 Windows客户机对 Linux 服务器的访问。例如,访问smaba服务器上的文件和打印机等。
Ps:SMB 最初设计是在 NetBIOS 协议上运行的,而 NetBIOS 本身运行在 TCP/IP 协议上( Windows 2000 引入了 SMB 直接在 TCP/IP 上运行的功能)。因此,通过“NetBIOS overTCP/IP”使用 samba服务,不但可以和局域网,而且可以和互联网上众多的计算机共享资源,因为互联网上的主机使用的通信协议都是 TCP/IP。
2. Samba相关进程:
samba 服务由两个进程组成,分别是nmbd 和smbd。
nmbd:其功能是进行 NetBIOS 名称解析(将 NetBIOS 名解析为PP地址),并提供浏览服务,显示网络上的共享资源列表。
smbd:其功能是用来管理 samba 服务器上的共享目录、打印机等,还负责用户权限设置和身份验证。
服务程序:smb.service
配置文件:/etc/samba/smb.conf
3. Samba功能:
文件和打印机共享:文件和打印机共享是 samba 的主要功能,通过 smbd 进程实现。
身份验证和权限设置:samba 通过 smbd 进程实现身份验证和权限设置,通过加密方式保护共享的文件和打印机。
名称解析:samba 通过 nmbd 进程搭建 NBNS(NetBIOS Name Service),提供名称解析,将计算机的 NetBIOS 名解析为 地址。浏览服务:在局域网中,samba服务器作为本地主浏览服务器,保存着可用资源列表,可为客户端访问Windows网上邻居提供浏览列表(包括共享目录、打印机等资源)。
4. 配置文件参数:
[global]#全局配置
workgroup = SAMBA #工作组名称
security = user #安全验证的方式。需验证来访问主机提供的口令才可以访问
security = share #来访主机无需验证口令;比较方便,但不安全
security = server #使用独立的远程主机验证来访主机提供的口令
security =domain #使用域控制器进行身份验证
passdb backend =tdbsam #定义后台的类型,共有三种。第一中:创建数据库文件并使用pdbedit命令建立Samba服务程序的用户
passdb backend =smbpasswd #使用smbpasswd命令为系统用户Samba服务程序的密码
passdb backend = ldapsam #ldapsam:基于LDAP服务进行账户验证
load printers = yes #设置在Samba服务启动时是否共享打印机设备
cups options = raw #打印机的选项
[homes]#共享参数
comment = Home Directories #描述信息
browseable = No #指定共享目录是否在“网上邻居”中可见
read only = No #指定共享目录是否仅读
browseable = No #在配置文件中的共享文件下敲这个命令,只有的通过samba服务共享当前文件是否允许可见。其他的非当前共享文件不影响本身效果
printers #打印机共享参数
Share Definitions 共享服务的定义
1.设置共享名
格式:
【共享名】
2.共享资源描述
格式:
comment= 备注信息
3.共享路径
格式:
path=绝对地址路径
4.设置匿名访问
格式:
public =yes //允许匿名当访问
public =no //不允许匿名当访问
5.设置访问用户
格式:
valid users = 用户名
valid users = @组名
6.设置目录只读
格式:
read only = yes //只读
read only = no //读写
7.设置过滤主机
格式:
hosts allow = 192.168.10. server.abc.com //允许来自192.168.10.0或server.abc.com的访问者访问Samba服务器资源
hosts deny = 192.168.10. server.abc.com //拒绝来自192.168.10.0或server.abc.com的访问者访问Samba服务器资源
8.设置目录可写
格式:
writable = yes //读写
writable = no //只读
9.设置目录只允许部分用户或组读写
格式:
writable list = 用户名 //允许该用户读写
writable list = @组 //允许该组读写
10.[home]为特殊共享目录,表示用户主目录。[printers]表示共享打印机
5. 配置实例:
1.创建samba共享,本地目录为/data/share1,要求:共享名为share1。仅允许zsuser用户能上传文件。
2.创建samba共享,本地目录为/data/public,要求:共享名为public。允许匿名访问。所有用户都能上传文件。
安装samba服务:
[root@appsrv ~]# yum install samba samba-client-libs.i686 -y
创建共享文件夹,设置权限
[root@appsrv ~]# mkdir /data/share1 -p
[root@appsrv ~]# mkdir /data/public
[root@appsrv ~]# chmod -R 777 /data/
创建samba账户
[root@appsrv ~]# useradd zsuser
[root@appsrv ~]# smbpasswd -a zsuser
New SMB password:
Retype new SMB password:
Added user zsuser.
编辑samba服务配置文件:
[root@appsrv ~]# vim /etc/samba/smb.conf
[share1]
path = /data/share1
write list = zsuser
[public]
path = /data/public
writeable = yes
public = yes
[root@appsrv ~]# systemctl restart smb.service
[root@appsrv ~]# setenforce 0
客户端测试:
[root@appsrv ~]# touch test.txt
[root@appsrv ~]# smbclient //127.0.0.1/share1 -U zsuser
Enter SAMBA\zsuser's password:
Try "help" to get a list of possible commands.
smb: \> put test.txt
putting file test.txt as \test.txt (0.0 kb/s) (average 0.0 kb/s)
smb: \> ls
. D 0 Tue Oct 24 03:57:55 2023
.. D 0 Tue Oct 24 03:54:43 2023
test.txt A 0 Tue Oct 24 03:57:55 2023
17811456 blocks of size 1024. 13328568 blocks available
smb: \>
[root@appsrv ~]# smbclient //127.0.0.1/public
Enter SAMBA\root's password:
Anonymous login successful
Try "help" to get a list of possible commands.
smb: \> ls
. D 0 Tue Oct 24 03:54:43 2023
.. D 0 Tue Oct 24 03:54:43 2023
17811456 blocks of size 1024. 13328452 blocks available
: \> put test.txt
putting file test.txt as \test.txt (0.0 kb/s) (average 0.0 kb/s)
smb: \> ls
. D 0 Tue Oct 24 03:59:18 2023
.. D 0 Tue Oct 24 03:54:43 2023
test.txt A 0 Tue Oct 24 03:59:18 2023
17811456 blocks of size 1024. 13328452 blocks available
smb: \>
标签:samba,appsrv,public,---,Samba,Linux,共享,root,smb
From: https://blog.csdn.net/Jackson0630/article/details/137587815