更新时间:2022-11-14
UP 发现社区里单纯讨论 SMB 共享设置的文章不多,因此想跟大家一起探讨一下如何在 Windows 10 / 11 下面正确且安全地开启 SMB 共享,在满足局域网内共享文件的需求下同时兼顾安全性。
UP 在查找 SMB 协议相关资料的时候,发现很多解决 SMB 问题的资料中还会教用户开启 SMB1 协议,UP 是非常不推荐的。
SMB1 可以追溯到 20 世纪 80 年代 IBM 和微软DOS 时代,距离今天已经有三十多年的时间,当时计算机安全还不存在,它在拦截攻击方面有重大的架构问题 。具体的内容就不放在本文中了,如果你感兴趣的话可以查看 《Stop using SMB1》文章。
如今版本的 windows 10/11 都默认禁用了 SMB1,因此如果你还在使用这一协议的话,UP 强烈建议你去关闭,方法如下:
SMB 安全是一个可以聊三天三夜的话题,但多数人不需要涉及到深层面的安全运维设置,但如果你感兴趣,可以从下面的参考资料开始了解:
这里 UP 提供一个简单的,可以在工作或家庭的局域网中显著提高安全性且不会太复杂的 SMB 共享设置方法(如果你有更好的方法和建议,欢迎留言):
默认情况下,在 SMB2 和 SMB3 版本中,Windows 10 / 11 系统下是禁用此服务的,按照本文的思路,yabo手机版app官网如果你开启了我建议你关闭,步骤如下:
简单来说,在你使用 SMB1 协议去共享文件时,虽然别人访问你的共享文件时 SMB1 会去验证访问者提供的用户证书是否有效,但是如果验证此证书为无效之后,SMB1 将会尝试开启 来宾 (guest)登录模式,允许访问者以 来宾 (guest)的身份进行登录。
UP 看到很多教程都会教用户开启此项设置开解决某些 SMB 问题(比如说下图),UP 真心不建议。
上图产生的错误,就是因为我们禁用了 来宾 身份的登录,但是大家不要认为这是不好的结果,恰恰相反,我们禁用此项功能就是为了实现这个目的——更好地保护我们的 SMB 共享资料安全。
从网络访问此计算机指只有授权的用户能够通过网络来访问到本机上的共享文件资源(包括共享的打印机)
设置好之后,joker 用户就无法本地登录到系统,同时也无法通过远程桌面的形式登录到本机,因为我们的目的就是让 joker 只能用来使用 SMB 共享。
默认情况下此项设置处于禁用状态,一般情况下也不需要打开。如果你打开了,说明要么你是专业人士,要么是误打误撞开启了这个选项,在你不理解这个设置背后的逻辑情况下,我建议你关掉,否则会产生访问错误。
建议打开,原因是我们在访问别人的 SMB 共享文件夹时,如果对方(服务器端)要求数字签名,那么如果此项设置没有启用,对方的服务器就不会允许我们(客户端)进行连接。
默认情况下是关闭的,建议不要打开。如果开启了,并且服务器端没有启用数字签名,那么将无法实现访问 —— 因为我们坚持要对 SMB 数据包进行数字签名,不签名不访问。
假如开启了此项设置,那么当你共享了一个打印机让别人来使用时,别人将没有办法直接从你这边下载这个打印机的驱动(除非别人用的是你电脑的管理员账号,否则无法下载驱动),建议关闭(默认也是关闭的)。syabo.com:10 11 下安全并
重点,请将 网络访问:本地账户的共享和安全模型设置为 经典 - 对本地用户进行身份验证,不改变其本来身份
很多教程会教你选择第二个选项 —— 仅来宾 - 对本地用户进行身份验证,其身份为来宾 来解决某些问题,但跟我前面说的一样, 来宾 身份存在很大的安全漏洞,
此安全设置确定如何对使用本地帐户的网络登录进行身份验证。正确地使用 SMB 共享 Window如果将此设置设为 经典 ,使用本地帐户凭据的网络登录通过这些凭据进行身份验证。yabo.com经典 模型能够对资源的访问权限进行精细的控制。通过使用 经典 模型,你可以针对同一个资源为不同用户授予不同类型的访问权限。
如果将此设置设为 仅来宾 ,使用本地帐户的网络登录会自动映射到来宾帐户。使用 仅来宾 模型,所有用户都可得到平等对待。所有用户都以来宾身份进行验证,并且都获得相同的访问权限级别来访问指定的资源,这些权限可以为只读或修改。
使用 仅来宾 模型时,所有可以通过网络访问计算机的用户 ( 包括匿名 Internet 用户 ) 都可以访问共享资源。你必须使用 Windows 防火墙或其他类似设备来防止对计算机进行未经授权的访问。同样,使用 经典 模型时,本地帐户必须受密码保护;否则,这些用户帐户可以被任何人用来访问共享的系统资源。
当你勾选此项设置,那么当你在使用 网络 面板时就能发现同局域网下面的其他主机(对方也要开启网络发现):
其实这一项设置不开启也是没问题的,不影响我们去做 SMB 共享,提高安全性。
上图中的 网络路径 :我们可以在资源管理器的地址栏中输入此地址来访问,但是不建议采用此种方式。
我们设置好了文件夹的共享,并且此文件夹只有 joker 用户以及我们管理员用户才能进行访问,接下来教大家如何正确的访问我们共享的文件夹。
首先,我们在另一台 Windows 系统上,可以先手动生成一份证书保存到系统中,这样以后我们在去访问 share 文件夹时就不需要手动输入 joker 用户的账号和密码了:
这里,我们不要使用网络面板的形式去访问我们设置的 share 文件夹(如果你跟着 UP 的设置,在上面关闭了网络发现,那么通过网络面板是找不到我们的主机的),而应该是使用 映射网络启动器 的形式:
不知道 UP 有没有把内容说得能让大家明白,如果大家有不明的地方(或者 UP 说得不对的地)可以私信或者评论区留言。