一个可以跨平台共享的网络文件夹
SMB 作为Windows自带的网络传输协议,主要用于局域网资源共享,主流操作系统亦对其有较好的实现和支持;作为一个设计用于「局域网」的网络协议,这表明该协议工作于「专用网络」,即常见办公网/家用网等私有/封闭的网络环境,同时也意味着:该协议不适于在「公共网络」等复杂且不安全的网络环境使用「尤其是该协议的早期版本」;如果一定要在「公共网络」中进行共享,请尽量借助其它「底层协议」或「恰当设计」以实现安全、高效地传输数据,通常情况下,在带有「隧道安全」的虚拟专网网络中使用不失为一种好的选择。
合适的网络类型
Windows 自带两套不同的网络类型,对应不同的防火墙安全策略:公共网络 / 专用网络,使用「专用网络」模板意味着当前网络是可以进行共享的。关于两种不同网络配置的详细操作
修改网络配置 - 针对 Windows Desktop
针对 Windows Server
针对Server版取消了上图的网络配置选项卡「Windows Server 2012」,但可以通过「本地安全策略」进行修改
早期版本的Windows 会有「家用网络」这一选项,此处可简单归集为「专用网络」,默认支持网络发现及网络共享。
启用共享
管理员用户组「Administrator」下的用户,默认拥有对该文件的访问权,如果局域网内都是可信设备,可以直接使用 自己的账户 进行访问。
「开放」共享
新版 Windows 似乎不太情愿用户以开放的形式共享自己的数据
从共享的对象出发,做不同的配置:
磁盘 / 分区
设置权限,增加 Everyone1 访问
文件夹
在上述 磁盘 / 分区 操作的基础上,给 Everyone 配置适当的权限
列出已共享的内容
运行 → 「compmgmt.msc」计算机管理
测试
Windows
iPad OS
自 13 developer beta 2 开始支持SMB协议,但是使用起来经常有奇奇怪怪的提示
经测试,「连接服务器」功能可以和 iPad OS 自带的 IKEv2 客户端联动,实现远程共享。
容易遇到的问题
明明已经设置为开放共享了,为什么使用Windows客户端连接时依然提示需要用户名和密码?
有一种情况是:客户端使用了和服务端同一名称的用户,比如:Administrator,这个用户名默认带有密码,因而登录时你只能输入密码,建议 服务端 不要使用Administrator作为默认用户名已避免系统想不开,如果已经默认为Administrator了,也可以二次修改。
“你不能访问此共享文件夹,因为你组织的安全策略阻止未经身份验证的来宾访问。”
开放共享的情况下还是需要允许来宾访问「部分操作系统版本」,部分防病毒软件/安全卫士可能会更改此策略;出于安全起见,必要时可允许来宾访问。
启用不安全的来宾登录「服务端」
此策略设置确定 SMB 客户端是否允许在 SMB 服务器上进行不安全的来宾登录。
如果你启用此策略设置或者未配置此策略设置,SMB 客户端将允许不安全的来宾登录。
如果你禁用此策略设置,SMB 客户端将拒绝不安全的来宾登录。
文件服务器使用不安全的来宾登录来允许对共享文件夹进行未经身份验证的访问。尽管在企业环境中不太常见,但充当文件服务器的消费型网络附加存储(NAS)设备经常使用不安全的来宾登录。默认情况下,Windows 文件服务器要求身份验证并且不会使用不安全的来宾登录。由于不安全的来宾登录未经过身份验证,重要的安全功能(例如 SMB 签名和 SMB 加密)将被禁用。因此,允许不安全的来宾登录的客户端很容易受到各种中间人攻击,从而导致数据丢失、数据损坏和遭受恶意软件的攻击。此外,可能网络上的任何人都可以访问写入到使用不安全来宾登录的文件服务器中的任何数据。Microsoft 建议禁用不安全的来宾登录,并将文件服务器配置为要求经过身份验证的访问。
网络正常,其它计算机就是无法找到共享的内容
如果实在找不到原因,尝试检查并适当关闭某些反病毒软件中与「局域网防护」相关的功能。
扩展阅读
Windows系统安全原理与技术「更好地理解用户和组」
Microsoft SMB, SMB2, NetBIOS, WINS protocol suite