samba参数配置教程(samba配置参数讲解)(/etc/samba/smb.conf ) 您所在的位置:网站首页 samba怎么配置文件可以修改 samba参数配置教程(samba配置参数讲解)(/etc/samba/smb.conf )

samba参数配置教程(samba配置参数讲解)(/etc/samba/smb.conf )

2023-12-24 10:11| 来源: 网络整理| 查看: 265

在这里插入图片描述

文章目录 samba smb.conf配置文档smb.conf重要配置参数讲解1. `workgroup`:指定Samba服务器所在的工作组名称。2. `server string`:指定Samba服务器的描述信息。3. `security`:指定Samba服务器的安全模式,可以是`user`、`share`或`domain`。4. `map to guest`:指定当访问未授权共享时,Samba服务器如何处理。可以是`bad user`、`guest`或`none`。5. `guest ok`:指定是否允许匿名访问共享。6. `guest account`:指定匿名访问共享时使用的用户账号。7. `valid users`:指定允许访问共享的用户列表。8. `read only`:指定共享是否只读。9. `writeable`:指定共享是否可写。10. `browseable`:指定共享是否可浏览。11. `path`:指定共享的路径。12. `create mask`:指定新创建文件的权限掩码。13. `directory mask`:指定新创建目录的权限掩码。14. `hosts allow`:指定允许访问Samba服务器的主机列表。15. `hosts deny`:指定禁止访问Samba服务器的主机列表。16. `printable`:用于指定共享的打印机是否可打印17. `public`用来设置共享目录是否为公共访问的选项(设置是否任何人都可访问)public与guest ok区别 ”匿名访问“跟”任何人都可访问“区别 smb.conf原始文件英文中文翻译 示例配置1(没太搞懂guest ok和public区别) 问题20230714 注意不能在`[]`里加`$`符号,否则打开samba文件夹啥也没有 20230814 配置方法更新一下,上面貌似有点老旧

samba smb.conf配置文档

通常,我们可以在Samba官方文档中找到详细的配置参数教程。

以下是Samba官方文档的链接:

Samba官方文档

在官方文档中,可以找到关于Samba的各种配置参数的详细说明和用法示例。可以根据自己的需求查找相应的配置参数,并按照文档中的说明进行配置。

在这里插入图片描述

我们可以从中进入到smb.conf的配置文档页面:

https://www.samba.org/samba/docs/current/man-html/smb.conf.5.html

在这里插入图片描述

内容比较多,容易让人看花眼。我们从中提取一些重要的信息。

smb.conf重要配置参数讲解

smb.conf是一个重要的配置文件,它包含了Samba服务器的各种配置参数。下面是一些常用的重要配置参数及其配置方法:

1. workgroup:指定Samba服务器所在的工作组名称。 workgroup = WORKGROUP

指定Samba服务器所在的工作组名称是为了使Samba服务器能够与其他计算机在同一工作组中进行通信和共享资源。工作组是一个逻辑上的组织单位,它将多台计算机组织在一起,使它们能够方便地进行网络通信和资源共享。

以下是指定Samba服务器工作组名称的一些用途:

身份验证:工作组名称用于标识一组计算机,这些计算机可以相互进行身份验证。当Samba服务器接收到来自其他计算机的连接请求时,它会使用工作组名称来确定是否接受该请求,并进行相应的身份验证。

资源共享:工作组名称用于标识一组计算机,这些计算机可以共享资源。当Samba服务器共享文件夹或打印机时,它会将这些共享资源添加到工作组中,使其他计算机能够方便地找到和访问这些资源。

网络浏览:工作组名称用于在网络浏览器或文件管理器中显示可用的计算机和共享资源。当用户浏览网络时,他们可以通过工作组名称来查找和选择所需的计算机和共享资源。

2. server string:指定Samba服务器的描述信息。 server string = Samba Server

指定Samba服务器的描述信息是为了向客户端提供有关服务器的信息,以便客户端能够更好地识别和连接到正确的服务器。描述信息通常会显示在网络浏览器或文件管理器中,以帮助用户识别和选择正确的共享资源。

以下是指定Samba服务器描述信息的一些用途:

识别服务器:当局域网中存在多个Samba服务器时,通过不同的描述信息,用户可以更容易地识别和区分这些服务器。描述信息可以包含服务器的名称、用途、位置等信息,帮助用户快速找到所需的服务器。

提供信息:描述信息可以向用户提供有关服务器的相关信息,如服务器的功能、所提供的共享资源类型、服务器管理员的联系方式等。这些信息可以帮助用户了解服务器的特点和使用方式。

增加可用性:通过提供清晰的描述信息,用户可以更好地了解服务器的用途和功能,从而选择合适的服务器进行连接。这有助于提高服务器的可用性和用户体验。

3. security:指定Samba服务器的安全模式,可以是user、share或domain。 security = user

指定安全模式是为了控制Samba服务器对用户身份验证和访问权限的管理方式。不同的安全模式提供了不同的身份验证和访问控制机制,以满足不同的安全需求。

以下是常见的安全模式及其用途:

user:这是最常用的安全模式。在这种模式下,Samba服务器会使用系统上的用户账号和密码进行身份验证。只有经过身份验证的用户才能访问共享资源。这种模式提供了较高的安全性,可以对每个用户进行细粒度的访问控制。

share:在这种模式下,Samba服务器不会进行用户身份验证,而是使用预定义的共享密码进行访问控制。所有知道共享密码的用户都可以访问共享资源。这种模式适用于一些公共共享场景,如公共文件夹或打印机。

domain:这种模式适用于与Windows域控制器集成的情况。Samba服务器会将用户身份验证请求转发给域控制器进行处理。这种模式可以实现与Windows域的集成,使得Samba服务器可以与Windows域中的用户和组进行身份验证和访问控制。

通过指定适当的安全模式,可以根据实际需求来管理Samba服务器的用户身份验证和访问权限。这样可以确保只有经过授权的用户才能访问共享资源,提高系统的安全性。

4. map to guest:指定当访问未授权共享时,Samba服务器如何处理。可以是bad user、guest或none。 map to guest = bad user

在smb.conf文件中,map to guest是一个参数,用于指定当Samba服务器无法验证客户端用户身份时,如何处理客户端的访问请求。

当map to guest设置为bad user时,表示如果客户端用户无法通过身份验证,Samba服务器将将其映射为一个特殊的"bad user"用户,该用户没有访问权限。

当map to guest设置为guest时,表示如果客户端用户无法通过身份验证,Samba服务器将将其映射为一个特殊的"guest"用户,该用户具有有限的访问权限。

当map to guest设置为never时,表示如果客户端用户无法通过身份验证,Samba服务器将拒绝其访问请求,不进行任何映射。

map to guest参数的设置可以根据实际需求来配置Samba服务器的访问控制策略。

5. guest ok:指定是否允许匿名访问共享。 guest ok = yes

smb.conf文件中的guest ok参数用于指定是否允许匿名访问Samba共享。当设置为yes时,允许未经身份验证的用户以匿名方式访问共享资源。当设置为no时,只有经过身份验证的用户才能访问共享资源。

以下是guest ok参数的一些用途:

公共共享:在某些情况下,你可能希望提供一些公共共享资源,供任何人都可以访问,而无需进行身份验证。例如,你可以创建一个公共文件夹,用于存放公告、文档或其他公共信息。通过将guest ok设置为yes,允许任何人以匿名方式访问这些共享资源。

临时访问:有时,你可能需要临时允许某些用户以匿名方式访问共享资源,而无需为他们创建专门的用户账号。通过将guest ok设置为yes,可以临时允许这些用户以匿名方式访问共享资源。

访问控制:在某些情况下,你可能希望限制匿名访问共享资源的权限。通过将guest ok设置为no,只有经过身份验证的用户才能访问共享资源,从而提高资源的安全性。

需要注意的是,当允许匿名访问共享资源时,建议对共享资源进行适当的访问控制,以确保只有授权的用户能够访问敏感信息。

在smb.conf文件中,可以通过以下方式配置guest ok参数:

guest ok = yes

通过设置适当的guest ok参数,可以控制是否允许匿名访问Samba共享资源,以满足不同的访问需求。

6. guest account:指定匿名访问共享时使用的用户账号。 guest account = nobody 7. valid users:指定允许访问共享的用户列表。 valid users = user1, user2 8. read only:指定共享是否只读。 read only = yes 9. writeable:指定共享是否可写。 writeable = yes 10. browseable:指定共享是否可浏览。 browseable = yes

在Samba中,可以通过指定共享是否可浏览来控制是否在网络浏览器或文件管理器中显示该共享。当共享设置为可浏览时,其他计算机上的用户可以在网络浏览器中看到该共享,并能够浏览其中的文件和文件夹。当共享设置为不可浏览时,其他计算机上的用户无法在网络浏览器中看到该共享。

以下是指定共享是否可浏览的一些用途:

可见性控制:通过将共享设置为可浏览,可以使其他计算机上的用户能够在网络浏览器中看到该共享。这对于共享一些公共资源或重要信息的情况非常有用,以便其他用户能够方便地找到和访问这些资源。

隐私保护:有时,你可能希望将某些共享资源隐藏起来,以保护其隐私和安全性。通过将共享设置为不可浏览,可以防止其他计算机上的用户在网络浏览器中看到该共享,从而增加共享资源的隐私保护。

简化浏览器视图:当你有许多共享资源时,将一些不常用的共享设置为不可浏览可以简化网络浏览器中的视图,使用户更容易找到和访问常用的共享资源。

注意,如果将browseable = no,windows上就看不到目录了:

比如,如果设置为no,下面root目录就看不到了。。。

在这里插入图片描述

11. path:指定共享的路径。 path = /path/to/share 12. create mask:指定新创建文件的权限掩码。 create mask = 0664 13. directory mask:指定新创建目录的权限掩码。 directory mask = 0775 14. hosts allow:指定允许访问Samba服务器的主机列表。 hosts allow = 192.168.1.0/24

在Samba中,可以通过指定允许访问Samba服务器的主机列表来限制哪些主机可以连接和访问Samba共享资源。这是一种访问控制的机制,可以增加共享资源的安全性。

通过指定允许访问的主机列表,你可以限制只有列表中的主机才能连接和访问Samba服务器。这可以防止未经授权的主机访问共享资源,从而保护共享资源的安全性。

掩码(mask)是一种用于指定网络地址范围的方法。在Samba中,当指定允许访问的主机列表时,可以使用掩码来指定一个网络地址范围。掩码24表示使用了24位的网络地址,即前24位是网络地址,后8位是主机地址。

例如,如果你想允许192.168.0.0/24网段的主机访问Samba服务器,你可以这样配置:

hosts allow = 192.168.0.0/24

这将允许192.168.0.0到192.168.0.255之间的所有主机访问Samba服务器。

使用掩码可以方便地指定一个网络地址范围,而不需要逐个列出每个允许访问的主机。这样可以简化配置,并提高可维护性。

同时,如果要设置多个IP地址允许访问Samba服务器,你可以在hosts allow参数中使用逗号分隔的IP地址列表。以下是设置多个IP地址的示例:

hosts allow = 192.168.0.100, 192.168.0.101, 192.168.0.102

这将允许IP地址为192.168.0.100、192.168.0.101和192.168.0.102的主机访问Samba服务器。

除此之外,还可以使用通配符来设置多个IP地址。例如,要允许192.168.0.0到192.168.0.255之间的所有主机以及192.168.1.0到192.168.1.255之间的所有主机访问Samba服务器,你可以这样配置:

hosts allow = 192.168.0.*, 192.168.1.*

这将允许上述两个IP地址范围内的所有主机访问Samba服务器。

15. hosts deny:指定禁止访问Samba服务器的主机列表。 hosts deny = 192.168.1.100 16. printable:用于指定共享的打印机是否可打印 printable = yes

在smb.conf文件中,printable是一个参数,用于指定共享的打印机是否可打印。当设置为yes时,表示该打印机是可打印的,允许其他计算机通过SMB协议访问并打印文件。当设置为no时,表示该打印机不可打印,其他计算机将无法通过SMB协议访问该打印机。

17. public用来设置共享目录是否为公共访问的选项(设置是否任何人都可访问)

当public = yes时,表示该共享目录是公共访问的,任何人都可以访问该共享目录,无需进行身份验证。这意味着任何人都可以读取、写入和执行该共享目录中的文件。

当public = no时,表示该共享目录是私有访问的,访问该共享目录需要进行身份验证。只有经过身份验证的用户才能访问该共享目录,并且只能访问其具有权限的文件和目录。

以下是一个示例的smb.conf配置文件片段,其中设置了一个公共访问的共享目录:

[public_share] path = /path/to/public_share public = yes writable = yes guest ok = yes

在上述配置中,[public_share]是共享目录的名称,path指定了共享目录的路径,public = yes表示该共享目录是公共访问的,writable = yes表示可以对共享目录进行写操作,guest ok = yes表示允许匿名用户访问该共享目录。

public与guest ok区别

在smb.conf配置文件中,public = yes和guest ok = yes都与共享目录的访问权限有关,但它们有一些区别。

public = yes: 这个选项用于设置共享目录是否为公共访问的。当设置为public = yes时,任何人都可以访问该共享目录,无需进行身份验证。这意味着任何人都可以读取、写入和执行该共享目录中的文件。

guest ok = yes: 这个选项用于设置是否允许匿名用户访问共享目录。当设置为guest ok = yes时,即允许匿名用户访问该共享目录。匿名用户是指没有提供用户名和密码进行身份验证的用户。如果设置为guest ok = no,则只有经过身份验证的用户才能访问该共享目录。

需要注意的是,public = yes和guest ok = yes可以同时设置,以实现公共访问且允许匿名用户访问的共享目录。例如:

[public_share] path = /path/to/public_share public = yes writable = yes guest ok = yes

在上述配置中,设置了一个公共访问的共享目录,任何人都可以访问该共享目录,同时允许匿名用户访问,并且可以对共享目录进行写操作。

”匿名访问“跟”任何人都可访问“区别

"匿名访问"和"任何人都可访问"在含义上有一些区别。

匿名访问:指的是允许用户以匿名身份访问共享资源,即无需提供用户名和密码进行身份验证。匿名用户可以是任何人,无需提供任何凭据。这意味着任何人都可以访问共享资源,但是访问权限可能会受到其他限制,如只读权限或特定的访问控制列表(ACL)。

任何人都可访问:指的是共享资源对所有用户开放,无需进行身份验证。这意味着任何人都可以访问共享资源,无论是否提供凭据。与匿名访问不同,任何人都可访问的共享资源不会对访问权限进行任何限制,所有用户都具有完全的读写权限。

在SMB/CIFS协议中,这两个概念可以根据具体的配置进行区分。通过设置guest ok = yes可以允许匿名访问,而通过设置public = yes可以允许任何人都可访问。这两个选项可以单独使用,也可以同时使用,具体取决于配置的需求和安全策略。

smb.conf原始文件 英文 # # Sample configuration file for the Samba suite for Debian GNU/Linux. # # # This is the main Samba configuration file. You should read the # smb.conf(5) manual page in order to understand the options listed # here. Samba has a huge number of configurable options most of which # are not shown in this example # # Some options that are often worth tuning have been included as # commented-out examples in this file. # - When such options are commented with ";", the proposed setting # differs from the default Samba behaviour # - When commented with "#", the proposed setting is the default # behaviour of Samba but the option is considered important # enough to be mentioned here # # NOTE: Whenever you modify this file you should run the command # "testparm" to check that you have not made any basic syntactic # errors. #======================= Global Settings ======================= [global] ## Browsing/Identification ### # Change this to the workgroup/NT-domain name your Samba server will part of workgroup = WORKGROUP # server string is the equivalent of the NT Description field server string = %h server (Samba, Ubuntu) #### Networking #### # The specific set of interfaces / networks to bind to # This can be either the interface name or an IP address/netmask; # interface names are normally preferred ; interfaces = 127.0.0.0/8 eth0 # Only bind to the named interfaces and/or networks; you must use the # 'interfaces' option above to use this. # It is recommended that you enable this feature if your Samba machine is # not protected by a firewall or is a firewall itself. However, this # option cannot handle dynamic or non-broadcast interfaces correctly. ; bind interfaces only = yes #### Debugging/Accounting #### # This tells Samba to use a separate log file for each machine # that connects log file = /var/log/samba/log.%m # Cap the size of the individual log files (in KiB). max log size = 1000 # We want Samba to only log to /var/log/samba/log.{smbd,nmbd}. # Append syslog@1 if you want important messages to be sent to syslog too. logging = file # Do something sensible when Samba crashes: mail the admin a backtrace panic action = /usr/share/samba/panic-action %d ####### Authentication ####### # Server role. Defines in which mode Samba will operate. Possible # values are "standalone server", "member server", "classic primary # domain controller", "classic backup domain controller", "active # directory domain controller". # # Most people will want "standalone server" or "member server". # Running as "active directory domain controller" will require first # running "samba-tool domain provision" to wipe databases and create a # new domain. server role = standalone server obey pam restrictions = yes # This boolean parameter controls whether Samba attempts to sync the Unix # password with the SMB password when the encrypted SMB password in the # passdb is changed. unix password sync = yes # For Unix password sync to work on a Debian GNU/Linux system, the following # parameters must be set (thanks to Ian Kahan


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有