附加信息

附加信息

对于我的设置,我想创建一个只允许从特定 IP 地址访问的 Samba 服务器。

我使用了这种配置 - 您可能会注意到我对教程中的选项和使用的键有点不知所措:

[global]
security=user
workgroup=TEST
map to guest = Bad User
# hosts allow = <allowed IP addresses> # will activate later, but want to have an open server running first
 
#### Debugging/Accounting ####
   log file = /var/log/samba/log.%m
   max log size = 1000
   logging = file
 
 
[data]
comment= Public data
path = /home/x6/Documents/sharedFolder
read only = no
guest ok = yes

并将文件权限更改.../sharedFolder777

drwxrwxrwx  2 x6   x6   4096 Jun  9 19:19 sharedFolder

访问尝试已登录log.winhostname

[2023/06/10 07:06:34.875024, 0, pid=1702, effective(65534, 65534), real(65534, 0)] ../../source3/smbd/service.c:168(chdir_current_service) chdir_current_service: vfs_ChDir(/home/x6/Documents/sharedFolder) 失败:权限被拒绝。当前令牌:uid=65534,gid=65534,1 个组:65534

[2023/06/10 07:06:34.875064, 3, pid=1702, 有效(65534, 65534), 实际(65534, 0), 类=smb2] ../../source3/smbd/smb2_server.c:3954(smbd_smb2_request_error_ex) smbd_smb2_request_error_ex: smbd_smb2_request_error_ex: idx[1] 状态[NT_STATUS_ACCESS_DENIED] || 在 ../../source3/smbd/smb2_server.c:3246

我认为这是用户的问题,但我对 Samba 还不太熟悉。我尝试了以下操作https://en.wikibooks.org/wiki/Samba/Configuring_a_Workgroup_from_the_Shell_with_Samba但命令smbpasswd -a guest没有被“接受”(只是smbpasswd再次打印了帮助信息)。

附加信息

我尝试过

我读了一点:https://www.samba.org/samba/docs/current/man-html/smb.conf.5.html#GUESTACCOUNT但我不知道该做什么。

我阅读了这篇文章,但是它提到的sudo smbpasswd -a name命令在之前的教程中没有帮助:https://www.ionos.de/digitalguide/server/konfiguration/samba-server-plattformuebergreifendes-netzwerk/

我在这里尝试了这个配置:https://wiki.samba.org/index.php/Setting_up_Samba_as_a_Standalone_Server但出现了同样的错误。

smbclient我尝试通过 和 远程计算机(运行 Linux)访问 samba 服务器。虽然常规连接似乎可行,但由于smbclient \\\\ip\\data导致输入密码提示,然后出现smb:\提示,我可以在其中输入其他命令,即使是简单的命令(如dir或 )ls也会失败NT_STATUS_ACCESS_DENIED。在我看来,使用 增加日志级别-d并没有产生任何有价值的信息。日志有点太长了,不方便分享。

我的怀疑

由于多个教程的配置文件都失败了,我认为可能是配置文件之外的问题,但我不确定问题是什么。

之后

稍后我将使用 Windows Credential Manager 来永久存储登录信息Windows 10 重启后忘记映射驱动器的凭据

关于我的设置

所有计算机都连接到一个路由器。有些通过 WLAN 连接,有些通过 LAN 连接。这些计算机中的一些是“受信任的”,因为它们被允许访问该文件夹。因此,我需要限制对这些计算机的访问。

路由器正在为这些计算机分配静态 IP。我认为这足以防止人们为自己分配合适的 IP 并在未经允许的情况下访问文件夹。

答案1

“hosts allow 或 allow hosts 参数是 Samba 的主要优势之一。它允许对网络上的共享进行访问控制IP 地址级别。要仅允许特定主机访问共享,请列出主机并以逗号分隔。允许整个子网是通过用点结束范围来实现的。"

Samba 不允许在第 2 层使用此选项进行访问控制,仅在第 3 层进行。

如果您想要将 MAC 地址列入白名单,则必须找到另一个选项来阻止网络流量到达该服务。

或者,如果您真的想花一些时间做这件事,您可以看看是否可以修改代码并重新编译。

我还会检查 Samba 是否仍然存在几年前所宣传的重大安全漏洞。

上次添加的额外标记或限定将被省略,但在洗澡时我突然意识到我忘记了一些东西。

我对此深感抱歉。

在谈及其余内容之前,让我们先分析一下我给出的回复和您的设置:

  1. 如果您的网络设置没有严格控制 IP 租赁和网络成员资格,IP 访问控制将不起作用。

  2. 如果您的 samba 服务器与客户端机器不在同一网段上,则 MAC 白名单将不起作用。

  3. 如果您没有向服务器进行身份验证,那么这两种解决方案都将不起作用。

  4. MAC 地址可以被伪造。现在这很容易。如果有人可以通过嗅探 WiFi 局域网中的无线信道来查看您设备的硬件 ID,一旦他们获得连接您网络的密钥,或者甚至在有线网络中,他们可以以某种方式插入,这也无法阻止任何有决心的人进入您的服务器。

现在让我们考虑应用。

如果你存储的是重要的东西,一定要听从我的话。如果你只是分享电影或视频文件,那就没什么大不了的。

如果您存储了可执行文件并且人们将运行它们,请限制写访问权限,否则您可能会遇到一些麻烦,并确保这些可执行文件来自可信来源并且未被更改。

一般来说,如果网络设置很糟糕,SMB 就无法强化。如果我可以将计算机插入墙上并设置静态 IP 地址,或者修改我的 MAC 地址,然后 dhcpd 会分配一个特定的 IP 地址,那么就可以立即访问。

此外,如果密码哈希处理效果不佳,或者未发送质询,甚至以双向加密形式通过网络发送密码,则有可能访问服务器。

另外。不要相信任何你至少没有自己构建过的操作系统,也不要完全信任它。不要相信任何代码没有被你信任的人或你自己强化过的操作系统,也不要完全信任你信任的人修改过的操作系统,因为它们可能不值得信任。

但就像我说的,考虑应用程序并确保人们必须以某种方式对某些网络服务进行身份验证才能获得访问权限,这样就没问题了。

如今,保护数据的唯一方法就是将其保存为独立的物理只读形式,并由您保管或锁起来。我们生活的时代,坏人干坏事,并试图做更坏的事,造成我们目前的混乱,现在每个人都在为他们的愚蠢行为受苦,而最初的罪犯则在地狱里大笑,在他们的干草叉灌肠之间。

相关内容