smb.conf 中的 Windows 主机名

smb.conf 中的 Windows 主机名

因此,我将一些驱动器(在我的 Ubuntu 桌面中)共享到我的笔记本电脑(Windows),但我只希望能够在本地网络上访问它。我通过在 smb.conf 中添加以下行来使其工作,其中 192.168.1.1 是我的笔记本电脑 IP(仅作为示例)。但如果我使用笔记本电脑主机名而不是 IP(例如),hosts allow = 127. 192.168.1.1它将不起作用。hosts allow = 127. Z1-B

我已经运行了sudo apt install winbind libnss-winbind,现在可以运行了ping Z1-B。不幸的是,这并没有解决问题。我该怎么做才能允许 Ubuntu 上的 samba 将 Windows 主机名转换为 IP?

答案1

为了仅允许本地网络中的人员,您可以在共享下添加hosts allow = 127.0.0.1, 192.168.1.以允许您的机器以及 192.168.1 子网上的任何设备访问该共享。

要允许特定主机名,您应该在 IP 和主机名之间使用逗号。您可以这样做hosts allow = 127.0.0.1, Z1-B

如果有帮助请考虑投票

答案2

我会尝试以下操作:

  • 更改配置后重新启动 samba
  • 将你的 Windows 笔记本电脑添加到 /etc/hosts 文件中。如下所示:

192.168.1.1 Z1-B

并重启后

答案3

我发现将主机名放在主机允许的开头就可以了。例如

 hosts allow = Z1-B, 192. 10.     #Comma after hostname
 dns proxy = yes
 hostname lookups = yes

重新启动 Samba ...即使主机名(Z1-B)的反向 DNS 查找失败,它也能正常工作,这对我来说非常好,因为我的主机名是使用 no-ip.com 动态定义的。

作为参考,我使用的是 FreeBSD 12.2 和 SMB 4.13.1

相关内容