桑巴舞:SmbClient

你好朋友!。 我们继续关于Samba的系列,今天我们将看到该软件包 客户端,它为我们提供了一系列工具来访问Microsoft Windows和Samba服务器上的共享资源。

永远记住,我们给 入口点 我们编写的程序或服务。 没有 我们打算替换许多但很多次程序存储库中唾手可得的丰富文档。 这就是为什么我们总是说,要获得更多信息, ,或者我们建议您始终在搜索Internet之前阅读随附的文档。 遗憾的是,存储库中可用的许多文档都是英文的。 目前,我们有大量由数千名爱好者开发的免费软件。 我们至少可以做的是阅读和研究如何使用它。 我相信我们是需要最少努力的那一部分。

事先,对于任何疏忽或错误,我深表歉意。 关于Samba套件的编写是一项非常艰巨的任务,即使仅涉及来自它的命令也是如此。

在继续之前,我们建议您阅读:

在文章中,我们将看到:

  • 客户端
  • 桑巴-共宾
  • 档案设定 / etc / resolv.conf中
  • 档案简介 /etc/samba/smb.conf
  • 使用SmbClient
  • 总结

埃尔帕克特 客户端 我们可以通过Synaptic或命令行安装它。 如 我们在控制台中执行:

aptitude show smbclient aptitude安装smbclient

请注意,软件包也已安装 桑巴舞 y 桑巴共宾。 尽管尚未安装Samba程序,但 SmbClient IF属于Samba套件.

客户端

该软件包为我们提供了以下工具:

  • 发现:列出有关在子网中响应SMB名称查询的计算机的信息。
  • 客户端:类似于 FTP 访问SMB / CIFS服务器上的共享资源。
  • 获取:类似于wget的实用程序,可从SMB服务器下载文件。
  • mb:在SmbClient上运行的控制台脚本,它使我们可以将共享的SMB / CIFS资源的备份副本直接复制到UNIX上的磁带记录器。
  • rpc客户端:执行客户端MS-RPC功能的工具,或 Microsoft远程过程调用。 Windows帮助中的更多信息。
  • SMB假脱机:将文件发送到SMB打印机。
  • :列表或 浏览器 文本模式下的SMB。 类似于Windows计算机的“网上邻居”。 打印具有所有已知域,每个域中的服务器及其共享资源的树。
  • smbcacls:用于处理SMB类型的文件夹或共享文件中的NT访问控制列表的工具。
  • smbc配额:用于管理配额的实用程序(配额)在SMB股票上。

桑巴-共宾

与此同时 桑巴共宾 为我们提供以下程序:

  • :实用程序的构想类似于程序«“视窗。 它是用于管理Samba服务器和远程CIFS服务器的工具。
  • 查找:用于NetBIOS名称查找的TCP / IP客户端上的NetBIOS。
  • 密码:允许我们更改用户的SMB密码的命令。
  • 测试文件:实用程序,可帮助我们检查主Samba配置文件的语法 配置文件.

在以上所有命令中,我个人主要使用 测试文件, smbclient, , y 密码。 要涵盖所有相关人员,这将是一篇非常长的文章,而且也很乏味。

为了测试SmbClient,我们使用以下设备制作了小型LAN:

w2003:Windows 2003 SP2 Enterprise Server中的主域控制器,它还提供DNS和WINS服务。 域名是 老友记。 在域中注册的用户是: 埃尔隆德, LEGOLAS, 皮平 y 大步向前。 :-)。 在此服务器中,我们有共享文件夹 中土,我们已授予的读取权限 大步向前 并读取-写入 皮平。 用户 埃尔隆德 他还是域管理员。

miwheezy: 装有Debian 7.0“ Wheezy”的机器,我们将在其中安装软件包 客户端.

精确的:与Ubuntu 12.04 Server LTS和Gnome-Shell组成的团队,我们还将在其中安装SmbClient软件包。 我们将这个团队加入到amigos.cu域中,以便在该域中注册的用户可以启动本地会话。 因此,您在域控制器上有一个计算机帐户。 他 怎么做 链接Debian或Ubuntu到Microsoft Active Directory,我们将在以后的文章中看到。

SMB-III-01

档案设定 / etc / resolv.conf中

正确声明DNS非常重要,尤其是当我们拥有带有Microsoft域控制器的LAN时。 在我们的示例中, w2003.amigos.cu 是10.10.10.30。 因此,文件 / etc / resolv.conf中 将具有以下内容:

搜索amigos.cu名称服务器10.10.10.30

如果我们没有在服务器上安装Network-Manager-GNOME,则在文件中正确声明先前的参数不会有任何损害。 / etc /网络/接口.

在Microsoft中配置域控制器时安装的DNS具有一系列附加记录,这些记录将它们与Active Directory功能紧密集成在一起。

我们采取的一切预防措施都是有效的,这样Samba才能正常工作,并且我们不必因避免出现配置错误而大惊小怪。

/etc/samba/smb.conf文件简介

当我们安装软件包 客户端,将创建Samba Suite的主要配置文件: 配置文件.

  • 在修改任何方面之前,请始终制作文件的备份副本。
  • 尽管帮助是英语的,但我们建议您在尝试更改任何参数之前请仔细阅读它。
  • 如果您一点也不懂英语,请仅更改包括本文在内的不同文献中的内容。

配置文件 它包含Samba Suite程序的运行时配置信息。 它的语法由命令检查 测试文件。 就像在后面的文章中,我们将更多地了解该文件,对于使用Debian或Ubuntu的机器,现在我们将仅限于表明必须对文件进行的最小必要更改。 没有链接到任何域。 更改以粗体突出显示。

 [全局] ##浏览/标识####将此更改为您的Samba服务器将属于工作组的工作组/ NT域名= 朋友
#服务器字符串等效于NT说明字段服务器字符串=%h服务器#Windows Internet名称服务支持部分:#WINS支持-告诉Samba的NMBD组件启用其WINS服务器#wins支持=否#WINS服务器-告诉Samba的NMBD组件将成为WINS客户端#注意:Samba既可以是WINS服务器,也可以是WINS客户端,但不能两者都用; 赢得服务器= wxyz
赢得服务器= 10.10.10.30

###文件的其余部分不变

也就是说,所做的更改将在参数中 工作组 y 胜服务器 只要。 有些人会怀疑WINS的使用。 Samba强烈建议在SMB / CIFS网络中使用此服务,以正确解析NetBIOS名称的IP。 即使安装了Samba域控制器,也可以通过参数wins support = yes,在smb.conf配置文件中告知NMBD守护程序充当WINS服务器,这在我们的特定情况下不是必需的。

我们检查smb.conf文件的语法:

至强@ miwheezy:〜$ testparm
从/etc/samba/smb.conf加载smb配置文件rlimit_max:将rlimit_max(1024)增加到Windows的最小限制(16384)处理部分“ [homes]”处理部分“ [printers]”处理部分“ [print $]”已加载服务文件确定。 服务器角色: 角色_独立
按Enter查看服务定义的转储[全局]工作组= FRIENDS服务器字符串=%h服务器映射到guest虚拟机=错误用户遵守pam限制=是pam密码更改=是passwd程序= / usr / bin / passwd%u passwd chat = *输入\ snew \ s * \ spassword:*%n \ n *重新输入\ snew \ s * \ spassword:*%n \ n *密码\ supdated \成功*。 UNIX密码同步=是syslog = 0日志文件= /var/log/samba/log.%m最大日志大小= 1000 dns代理=否wins服务器= 10.10.10.30 usershare allow来宾=是紧急操作= / usr / share /桑巴舞/恐慌行动%D IDMAP配置*:后端= TDB [.....]

##如果我们在Precision.amigos.cu(之前已将##加入到friends.cu域)中进行此操作,则输出会有所不同##

大步前进@精确:〜$ testparm
从/etc/samba/smb.conf加载smb配置文件rlimit_max:将rlimit_max(1024)增加到最小Windows限制(16384)已加载的服务文件,确定。 服务器角色: ROLE_DOMAIN_MEMBER
按Enter查看服务定义的转储[全局]工作组= AMIGOS领域= AMIGOS.CU安全= ADS操作系统级别= 0本地主机=没有域主机=没有模板外壳= / bin / bash winbind枚举用户=是winbind枚举组=是winbind使用默认域=是idmap配置BCTUK:范围= 10000000-19000000 idmap配置BCTUK:后端=摆脱idmap配置*:范围= 11000-20000 idmap配置*:后端= tdb

进行更改后,无需重新启动任何服务,我们准备使用该命令 客户端.

使用SmbClient

SmbClient本质上是一个控制台命令。 因此,我们将利用它。

En miwheezy变种cu:

至强@ miwheezy:〜$ smbclient -L w2003
输入至强的密码:会话设置失败:NT_STATUS_LOGON_FAILURE

##逻辑结果,因为xeon不是域中的注册用户

至强@ miwheezy:〜$ smbclient -L w2003 -U大步向前
输入trancos的密码:域= [法语]操作系统= [Windows Server 2003 3790 Service Pack 2]服务器= [Windows Server 2003 5.2]共享名类型注释--------- ---- ------ -C $磁盘默认共享IPC $ IPC远程IPC ADMIN $磁盘远程管理SYSVOL磁盘登录服务器共享 
    中土盘      
    NETLOGON磁盘登录服务器共享域= [FRIENDS] OS = [Windows Server 2003 3790 Service Pack 2]服务器= [Windows Server 2003 5.2]服务器注释--------- -------精确的Samba 3.6.3 .2003 W2003工作组主管--------- -------朋友WXNUMX

##查看共享资源tierramedia

至强@ miwheezy:〜$ smbclient // w2003 / Middle Earth -U elrond
输入elrond的密码:域= [FRIENDS]操作系统= [Windows Server 2003 3790 Service Pack 2]服务器= [Windows Server 2003 5.2] smb:\> dir NT_STATUS_ACCESS_DENIED列表\ * smb:\>退出

##逻辑! 尽管elrond是管理员,但他对该资源没有权限。

至强@ miwheezy:〜$ smbclient // w2003 / Middle Earth -U strides
输入trancos的密码:域= [FRIENDS] OS = [Windows Server 2003 3790 Service Pack 2]服务器= [Windows Server 2003 5.2] smb:\>目录。 D 0 Sat Jul 20 16:58:54 2013 .. D 0 Sat Jul 20 16:58:54 2013 Pipin的文件夹D 0 Sat Jul 13 13:01:46 2013 Hawaii.Five-0.2010.S01E01.HDTV.XviD.avi A 366793752 21年22月51日星期二12:2010:0.2010 Hawaii.Five-01.S01E63362.HDTV.XviD.srt A 22 Wed Sep 14 03:40:2010 40915 262144块,大小为29215块可用smb:\> mkdir测试NT_STATUS_ACCESS_DENIED制作远程目录\ test smb:\>退出

##请记住,跨步仅具有读取权限

至强@ miwheezy:〜$ smbclient // w2003 / Middle Earth -U pipin
输入pipin的密码:域= [FRIENDS]操作系统= [Windows Server 2003 3790 Service Pack 2]服务器= [Windows Server 2003 5.2] smb:\>目录。 D 0 Sat Jul 20 16:58:54 2013 .. D 0 Sat Jul 20 16:58:54 2013 Pipin的文件夹D 0 Sat Jul 13 13:01:46 2013 Hawaii.Five-0.2010.S01E01.HDTV.XviD.avi A 366793752 21年22月51日星期二12:2010:0.2010 Hawaii.Five-01.S01E63362.HDTV.XviD.srt A 22 Wed Sep 14 03:40:2010 40915年262144块,大小为29215块可用smb:\> mkdir try smb:\>目录。 D 0 Sun Jul 21 14:21:30 2013 .. D 0 Sun Jul 21 14:21:30 2013 Pipin的文件夹D 0 Sat Jul 13 13:01:46 2013 Hawaii.Five-0.2010.S01E01.HDTV.XviD.avi A 366793752 21年22月51日星期二12:2010:0.2010 Hawaii.Five-01.S01E63362.HDTV.XviD.srt A 22 Wed Sep 14 03:40:2010 0测试D 21 14年21月30日星期日2013:40915:262144 29215个大小XNUMX。XNUMX个可用smb:\>? ? allinfo altname存档块大小取消case_sensitive cd chmod chown close del dir du echo echo get getfacl geteas hardlink help history iosize lcd link lock smallcase ls l mask md mget mkdir more mput newer new new posix posix_encrypt posix_open posix_mkdir posix_rmdir q读提示提示符postix_undir rd递归恢复重命名rm rmdir showacls设置setmode stat symlink tar tarmode转换解锁卷vuid wdel登录listconnect ..!             

##命令列表以及下面的命令帮助##请记住,smbclient就像ftp客户端一样。

smb:\>帮助获得帮助得到: [本地名称]获取文件smb:\>退出
至强@ miwheezy:〜$ ls -l
总数68 drwxr-xr-x 2 xeon xeon 4096 Jul 13 12:56 Desktop -rw-r-r-- 1 xeon xeon 63362 Jul 21 14:24 Hawaii.Five-0.2010.S01E01.HDTV.XviD.srt

##有效地,将srt文件复制到smbclient的文件夹中。

至强@ miwheezy:〜$ man smb.conf> samba.man
至强@ miwheezy:〜$ ls -l
总计420 drwxr-xr-x 2 xeon xeon 4096 Jul 13 12:56 Desktop -rw-r-r-- 1 xeon xeon 63362 Jul 21 14:24 Hawaii.Five-0.2010.S01E01.HDTV.XviD.srt -rw- r-r-- 1 xeon xeon 359814 Jul 21 14:30 samba.man
至强@ miwheezy:〜$ smbclient // w2003 / Middle Earth -U pipin
输入pipin的密码:域= [FRIENDS]操作系统= [Windows Server 2003 3790 Service Pack 2]服务器= [Windows Server 2003 5.2] smb:\>将samba.man放在文件samba.man中作为\ samba.man(10980,6 kb / s)(平均10980,7 kb / s)smb:\>目录。 D 0 Sun Jul 21 14:31:36 2013 ..D 0 Sun Jul 21 14:31:36 2013 Pipin的文件夹D 0 Sat Jul 13 13:01:46 2013 Hawaii.Five-0.2010.S01E01.HDTV.XviD.avi A 366793752 21年22月51日星期二12:2010:0.2010 Hawaii.Five-01.S01E63362.HDTV.XviD.srt A 22 Wed Sep 14 03:40:2010 0测试D 21 Sun Jul 14 21:30:2013 359814 samba.man A 21 Sun Jul 14 31:36:2013 40915 262144块,大小为29213. XNUMX块可用smb:\>退出

##现在尝试smbtree命令

至强@ miwheezy:〜$ smbtree
输入xeon的密码:朋友\\ W2003 \\ PRECISE Samba 3.6.3 \\ PRECISE \ IPC $ IPC服务(Samba 3.6.3)
至强@ miwheezy:〜$ smbtree -U legolas
输入legolas的密码:AMIGOS \\ W2003 \\ W2003 \ NETLOGON登录服务器共享\\ W2003 \ tierramedia \\ W2003 \ SYSVOL登录服务器共享\\ W2003 \ ADMIN $远程管理员\\ W2003 \ IPC $远程IPC \\ W2003 \ C $默认共享\\ PRECISE Samba 3.6.3 \\ PRECISE \ IPC $ IPC服务(Samba 3.6.3)

##观察已注册和未注册用户的退出

总结

  • 即使客户端计算机未加入域,也始终建议使用域中注册用户的凭据运行命令。 当然,我们必须知道该用户的身份验证凭据,或者在域中拥有我们的用户帐户。
  • 从上述内容可以得出结论,除非我们要以域用户身份登录到客户端计算机,否则不必将客户端计算机集成到一个域中。 实际上,我的工作站未加入我的公司域。
  • 命令 得到 y 它们从共享到本地文件夹或从中调用smbclient的客户端计算机工作。
  • 要了解所有内部命令 客户端,我们必须输入问号 ?.
  • 如果我们从先前加入域的计算机上执行相同的先前操作,则结果将相同。 我们在我们检查 precision.amigos.cu.
  • 使用SmbClient远远超出了本文中所见。 我们将在以后的帖子中看到它。
  • 尽管对于许多同修来说都很强大,但Samba Suite需要进行个人学习。 并非所有答案都在WWW Village中的文章中。 其中许多都是莎士比亚的语言。
  • 不要因为第一个错误而灰心。 如果我们学习如何使用Samba套件,我们将学到很多有关SMB / CIFS网络,尤其是有关Microsoft网络的知识。

最后,在Nautilus或其他文件浏览器中运行 smb:// pipin @ w2003 / Middle Earth,以建立与该资源的连接。 尝试打开文件 。AVI 使用VLC,然后使用图腾。 得到自己的结论。

朋友,今天就是这样。 直到下一次冒险!

我的局域网:

SMB-III-02


24条评论,留下您的评论

发表您的评论

您的电子邮件地址将不会被发表。 必填字段标有 *

*

*

  1. 负责数据:MiguelÁngelGatón
  2. 数据用途:控制垃圾邮件,注释管理。
  3. 合法性:您的同意
  4. 数据通讯:除非有法律义务,否则不会将数据传达给第三方。
  5. 数据存储:Occentus Networks(EU)托管的数据库
  6. 权利:您可以随时限制,恢复和删除您的信息。

  1.   爱立信

    我有一个问题,在Debian 7中配置samba,但是在进入共享文件夹时,我总是需要输入密码,该怎么办?

    1.    Federico A.ValdésToujague

      该文件夹是在Wheezy本身还是在远程计算机上共享的? 如果与Wheezy在团队中共享,那么您已经领先了几篇文章。 🙂

      1.    爱立信

        实际上,该文件夹是在Wheezy上共享的

  2.   安东尼奥·加洛索(Antonio Galloso)

    很好的帖子,我使用smbpasswd更改Windows域中的密码,并通过firefox访问公司的Outlook邮件,但我根本不使用winbugs。

    smbpasswd -r domain-此处-U userID-此处

    1.    费德里科·安东尼奥·瓦尔德斯·图亚格

      谢谢评论!!!

  3.   阿鲁纳多

    良好的共鸣安东尼奥! 网上有很多有关samba的信息,但我将其标记为书签。 来自南方的问候。

  4.   s0rmt4il

    优质的材料,这种东西每天都不会被看到,而且这种方式很少出现。

    感激😀

    的问候!

  5.   埃利奥时间3000

    该教程非常好,尽管我不确定它是否将与带有内核6.X的Windows Server版本(分别为Server 2008和Server 2012)兼容。

    1.    费德里科·安东尼奥·瓦尔德斯·图亚格

      问候@eliotime !!!。 尝试不会丢失任何东西。 真理的最好标准是实践。 现在,如果我没记错的话,Lan Manager的2003版本是5.0。 您知道Microsoft会为您提供一点安全,以换取黑暗。 我认为,如果Microsoft认真考虑向后兼容性,则它应该在2008和2012服务器上也能正常工作。

      现在,我想知道在现代Linux中是否需要使用Windows 2008或2012服务器在Business LAN中提供服务? 请注意,我没有说WWW村! 🙂

  6.   毛里求斯

    伟大的文章朋友,并不是每天都能看到如此详细的信息。

    我喜欢这个,我将保存它,以便在我有时间的时候更冷静地复习。

  7.   Federico A.ValdésToujague

    谢谢大家的意见!!!。

  8.   马里奥

    您好,本文和整个samba系列都非常好!
    自samba 8起,我无法尝试连接到Win3.4.9上的共享文件夹和打印机。
    问题是它给了我一条消息(使用-d 7在smbclient命令行上进行调试),它显示:

    SPNEGO登录失败:参数无效

    好吧,我不太了解我们应该怎么做
    很好地配置SPNEGO。
    您能对此澄清一下吗?

  9.   费德里科·安东尼奥·瓦尔德斯·图亚格

    从Samba版本3.6.0开始,包含对SPNEGO的支持。 在Debian 7“ Wheezy”中,Samba版本是3.6.6-6,而在Ubuntu 12.04中,“ Precise”是3.6.3-2ubuntu2。 两者都支持SPNEGO。

    简单和受保护的GSS-API协商(SPNEGO)

    SPNEGO协议的目的是允许客户端和服务器协商用于身份验证的安全机制。 协议必须满足的要求在RFC2478中指出,并使用“令牌”,因为它们是根据ASN.1 DER建议构建的。 DER是指《专有编码规则》或《专有编码规则》。 它们引用了一系列规则,这些规则以独立于所使用平台的方式创建二进制编码。 Samba支持SPNEGO。

    1.    马里奥

      谢谢费德里科,
      通过使用以下行修改smb.conf来完成:
      客户端使用spnego =否

      然后,连接正常在桑巴杯/杯子和
      Windows8中的共享打印机。

      如您所知,spnego的全面支持来自samba 3.6
      我正在使用samba 3.4.9 ...所以我决定不使用samba服务器中的spnego
      (在win8中充当打印机的客户端)。

      解决。

      1.    若尔热

        嗨,朋友,我有samba vesion 3.0.33-3.40.el5_10
        而且它无法将我连接到具有win8.1的计算机
        我试图添加spnego线,但它没有用,能帮我谢谢吗

  10.   拉夫

    优秀的文章..

    1.    FICO

      谢谢同事😉

  11.   ock

    好文章

  12.   奥特曼兹

    好!
    我想问你一件事,如果这不是滋扰,我会告诉你。
    首先,一点一点地学习samba的指南确实很棒,尽管我还不了解所有内容(因为您可以说我是网络领域的新手hahaha),但是我学到了很多东西,所以首先我想告诉你他们很棒!

    问题如下,正如我告诉您的有关网络的知识,我了解基本知识,我知道如何计算二进制,子网,网关主题等网络。(现在,我正在与Cisco Packet一起在课堂上练习示踪剂,以防万一,但我想了解更多,因为我对联网非常热衷。
    您会在哪里建议我开始阅读以了解更多信息? 我想更好地理解Samba的主题!
    问候和感谢您的时间!

    1.    费德里科

      感谢您阅读我的文章和您的评价! 我认为您首先应该问自己,是将自己专用于企业LAN还是另一种类型,还是专用于WAN(Internet),因为它们之间存在差异。 以我为例,我对Business Networks的了解最少,因此我将文章重点放在它们上,您可以看到是否在其中访问了其余的内容。 https://blog.desdelinux.net/author/fico或者在 http://humanos.uci.cu/author/federico。 如果您决定使用企业局域网,那么Joel BarriosDueñas的书《使用GNU / Linux进行服务器配置》是一个很好的起点,网址为: http://www.alcancelibre.org.

      这是我的建议和问候。

      1.    奥特曼兹

        好!
        非常感谢您对我的评论!
        我一直在思考,尽管我尚未做出坚定的决定,但我想我真的很想献身于企业局域网,但是我想我想开始学习它。
        另一方面,我一直在查看您给我的链接,特别是最后一个链接,并且我下载了有关使用GNU / Linux配置服务器的书,对我来说,这似乎是一个很好的建议,我开始查看索引,我真的相信即使不了解该主题我也可以学到很多东西,所以我已经开始阅读它!
        问候,并非常感谢您的建议/回应!

  13.   米尔顿

    我有一个samba ubuntu 1504作为带有samba的foxproxw中的应用程序服务器。 但是当用户从应用程序命令打印cmd控制台时出现,并且不打印任何内容。

  14.   清除

    朋友,我希望您能读到我的担心,我已经尝试了几天,能够共享var / log / squid3中的squid3文件,以便能够在该方向上配置锯木厂,也就是说在我的代理中能够分析痕迹,这对我来说是不可能的。 我解释
    在linux unbuntu 14.04中安装代理并安装samba以共享相关限制,当然会访问var / log / squid3中的文件,由于锯木厂向我询问网络路径,因此我将访问squid access.log它将读取的日志,从而对代理日志进行分析,但是它已经变成了奥德赛,由于我在Windows域中,所以我不知道该怎么办,而且我不知道如何制作该文件被分享
    我只看到Windows中的共享资源,它要求我通过,而当我把相信samba的用户放到那时,它并不能让我到达el
    该怎么办我的朋友?
    如果您能尽快为我提供帮助,我将不胜感激,因为我不知道是否可以返回此网站,因此请留下我的电子邮件与您联系
    clear614@gmail.com

  15.   盲目的

    我将Ubuntu 18作为“成员服务器”安装在域环境中,我需要Windows客户端能够使用其域凭据从Ubuntu访问共享文件夹。

    我可以看到该资源,但是即使我已经从smb.conf文件中授予了访问权限,它也显示了“拒绝权限”