![Windows 10 和 Linux 服务器之间的连接](https://linux22.com/image/139681/Windows%2010%20%E5%92%8C%20Linux%20%E6%9C%8D%E5%8A%A1%E5%99%A8%E4%B9%8B%E9%97%B4%E7%9A%84%E8%BF%9E%E6%8E%A5.png)
我运行 Windows 10 笔记本电脑,我的办公室有一个运行 Samba 的 Linux 文件服务器。由于某种原因,该服务器在我的网络位置上不可见,也无法将网络驱动器映射到该文件服务器。我尝试浏览该位置并映射服务器的本地 IP,但它回来告诉我我没有输入有效的位置。
答案1
可能的原因有多种,具体取决于您的环境的详细信息。
如果您的 Windows 10 安装最初是“秋季创意者更新”或更高版本,则默认情况下会禁用 SMBv1 客户端。这是由 WannaCry 勒索软件流行引发的,该勒索软件利用了 SMBv1 协议中的一个关键漏洞。
如果您的 Linux 文件服务器(未指定的发行版和版本?)没有及时更新补丁,或者具有长时间未审查的非默认配置,则它server max protocol
的文件中可能仍具有smb.conf
默认设置/设置为NT1
,表示 SMBv1。由于上述漏洞,您应该在去年左右的某个时候摆脱 SMBv1。
所有企业级 Linux 发行版早已发布了更新,允许在任何受支持的发行版版本上使用 SMBv2 和/或 SMBv3。因此,如果服务器在其他方面是最新的,只需验证您的smb.conf
文件是否没有愚蠢的server max protocol
设置,然后将设置更改为server max protocol = SMB3_02
或更好(如果有)。
SMBv1 早就计划最终删除,而该漏洞的发现(如果有的话)加快了删除进度。
如果您的办公网络环境使用 Active Directory,则网络位置的发现很可能使用 AD,问题可能是 Linux 文件服务器无法将适当的 DNS 记录注册到 AD 域。
如果没有 Active Directory,则网络位置的发现将退回到旧的 NetBIOS 样式,这可能会使用 WINS 服务器(它只是一台或多台服务器主机上的附加角色),或者可能仅依赖于来自每个服务器的广播服务器。在这种情况下,您需要验证客户端和服务器端的端口 137/UDP 和 138/UDP 未被阻止。