samba

本文详细介绍了Samba服务的原理、组件及其在Linux系统中的配置和管理,包括SMB和NMB服务的作用、端口监听、安装Samba软件包、设置配置文件、启动服务、防火墙规则以及日志管理和安全设置。此外,还涉及Samba用户管理和文件共享,以及如何挂载Samba共享目录。
摘要由CSDN通过智能技术生成

0,原理架构

就像 NFS 是架构在 RPC Server 上面一样, SAMBA 这个文件系统是架构在 NetBIOS (Network Basic Input/Output System, NetBIOS) 这个通讯协议上面所开发出来的。

组成Samba运行的有两个服务,一个是SMB,另一个是NMB;SMB是Samba 的核心启动服务,主要负责建立 Linux Samba服务器与Samba客户机之间的对话, 验证用户身份并提供对文件和打印系统的访问,只有SMB服务启动,才能实现文件的共享,监听139 TCP端口;而NMB服务是负责解析用的,类似与DNS实现的功能,NMB可以把Linux系统共享的工作组名称与其IP对应起来,如果NMB服务没有启动,就只能通过IP来访问共享文件,监听137和138 UDP端口。

 Samba在windows下使用的是NetBIOS协议,如果你要使用Linux下共享出来的文件,请确认你的windows系统下是否安装了NetBIOS协议。

Samba使用的 damons:

NetBIOS 机器间的沟通

  • 取得对方主机的NetBIOS name 定位该主机所在:

  • 利用对方给予权限存取可用资源

SAMBA 使用下面两个服务来控制上面两步骤,分别是:

  • nmbd
    • 这个daemon是用来管理工作组,NetBIOS name等等的解析。
    • 主要利用 UDP 协议开启 port 137 138 来负责名称解析的任务。
  • smbd
    • 这个daemon主要用来管理SAMBA主机分享的目录,档案与打印机等等。
    • 主要利用可靠的TCP协议来传输数据,开放端口为139.

所以SAMBA每次启动至少都需要有这个daemon,而当我启动了SAMBA之后,主机系统就会启动137,138 这两个UDP 及139这个TCP端口。

 1,

yum -y install samba*

Installing:
samba x86_64 4.10.16-17.el7_9 updates 719 k
samba-client x86_64 4.10.16-17.el7_9 updates 646 k
samba-client-libs x86_64 4.10.16-17.el7_9 updates 5.0 M
samba-common noarch 4.10.16-17.el7_9 updates 216 k
samba-common-libs x86_64 4.10.16-17.el7_9 updates 182 k
samba-common-tools x86_64 4.10.16-17.el7_9 updates 466 k
samba-dc x86_64 4.10.16-17.el7_9 updates 88 k
samba-dc-libs x86_64 4.10.16-17.el7_9 updates 88 k
samba-devel x86_64 4.10.16-17.el7_9 updates 304 k
samba-krb5-printing x86_64 4.10.16-17.el7_9 updates 96 k
samba-libs x86_64 4.10.16-17.el7_9 updates 271 k
samba-pidl noarch 4.10.16-17.el7_9 updates 190 k
samba-python x86_64 4.10.16-17.el7_9 updates 3.0 M
samba-python-test x86_64 4.10.16-17.el7_9 updates 532 k
samba-test x86_64 4.10.16-17.el7_9 updates 1.9 M
samba-test-libs x86_64 4.10.16-17.el7_9 updates 132 k
samba-vfs-glusterfs x86_64 4.10.16-17.el7_9 updates 115 k
samba-winbind x86_64 4.10.16-17.el7_9 updates 560 k
samba-winbind-clients x86_64 4.10.16-17.el7_9 updates 149 k
samba-winbind-krb5-locator x86_64 4.10.16-17.el7_9 updates 94 k
samba-winbind-modules x86_64 4.10.16-17.el7_9 updates 123 k

2,

rpm -ql samba-client
/usr/bin/cifsdd
/usr/bin/dbwrap_tool
/usr/bin/findsmb
/usr/bin/mvxattr
/usr/bin/nmblookup
/usr/bin/oLschema2ldif
/usr/bin/regdiff
/usr/bin/regpatch
/usr/bin/regshell
/usr/bin/regtree
/usr/bin/rpcclient
/usr/bin/samba-regedit
/usr/bin/sharesec
/usr/bin/smbcacls
/usr/bin/smbclient
/usr/bin/smbcquotas
/usr/bin/smbget
/usr/bin/smbprint
/usr/bin/smbspool
/usr/bin/smbtar
/usr/bin/smbtree

rpm -ql samba-common
/etc/logrotate.d
/etc/logrotate.d/samba
/etc/samba
/etc/samba/lmhosts
/etc/samba/smb.conf
/etc/samba/smb.conf.example
/etc/sysconfig/samba
/run/samba
/run/winbindd

/var/lib/samba
/var/lib/samba/lock
/var/lib/samba/private
/var/log/samba
/var/log/samba/old

rpm -ql samba-common-tools
/usr/bin/net
/usr/bin/pdbedit   (服务器功能,在管理 Samba 的用户账号密码时使用)

pdbedit -L  (查看所有用户)
/usr/bin/profiles
/usr/bin/smbcontrol
/usr/bin/smbpasswd
/usr/bin/testparm

rpm -ql samba-winbind
/etc/NetworkManager/dispatcher.d/30-winbind
/usr/lib/systemd/system/winbind.service

/usr/sbin/winbindd

/var/lib/samba/winbindd_privileged

rpm  -ql  samba

/etc/openldap/schema
/etc/openldap/schema/samba.schema
/etc/pam.d/samba
/usr/bin/smbstatus       (状态管理命令,查看全部信息)
/usr/lib/systemd/system/nmb.service
/usr/lib/systemd/system/smb.service

/usr/sbin/eventlogadm
/usr/sbin/nmbd
/usr/sbin/smbd

/var/lib/samba/drivers
/var/spool/samba

ls /etc/samba
lmho

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值