SMB协议,Windows局域网文件共享,主流协议是哪一种?

摘要:0 序 尝试基于群晖NAS的SMB协议服务,实现群晖NAS的文件夹映射到同一局域网电脑的虚拟磁盘上。 群晖NAS与局域网本地电脑的磁盘映射 - 博客园千千寰宇 "群晖NAS的网络接口一般都是千兆网口,换算成理论上
0 序 尝试基于群晖NAS的SMB协议服务,实现群晖NAS的文件夹映射到同一局域网电脑的虚拟磁盘上。 群晖NAS与局域网本地电脑的磁盘映射 - 博客园/千千寰宇 "群晖NAS的网络接口一般都是千兆网口,换算成理论上的网速大约是125MB/s,实际大文件持续传输速度大约为90-110MB/s。这个是内网访问速度,与外网访问速率相比是相当快的。所以,建议把NAS放在距离你较近的位置,若办公为主就放办公室,家庭娱乐为主就放在家里,充分利用局域网的高速优势。" 总体思路: 群晖NAS 作为 SMB Server,本地电脑 作为 SMB 访问端 根据笔者的观察,所工作过的几家公司、及诸多打印店均有基于局域网使用SMB协议的情况。 说明 SMB 协议的实用性还是很高的。 1 概述:SMB协议 SMB(Server Message Block)协议,是网络文件共享系统(Common Internet File System,缩写为CIFS)、一种网络文件共享协议、一种应用层网络传输协议; 主要功能是使网络上的机器能够共享计算机文件、打印机、串行端口和通讯等资源。 其广泛应用于家庭网络环境或企业网络环境中。 SMB协议是由【微软】开发的网络通信协议,主要用于在局域网内实现文件、打印机和其他资源的共享。 它工作在应用层,通常运行在TCP/IP协议之上,使用端口445(现代版本)或139(早期版本配合NetBIOS)。 发展历史 SMB 1.0(1980年代):最初版本,安全性较低 SMB v1/CIFS 存在 远程代码执行漏洞,远程攻击者 通过 向受影响的系统发送特制请求包,可以造成 远程代码执行。 SMB 2.0(2006年,Windows Vista/Server 2008):性能提升,减少命令数量 SMB 2.1(Windows 7/Server 2008 R2):增加Oplock租约机制 SMB 3.0(2012年,Windows 8/Server 2012):重大更新,增加加密、多通道等功能 SMB 3.1.1(Windows 10/Server 2016):最新版本,增强安全性 核心功能 功能 说明 文件共享 访问远程服务器上的文件和文件夹 打印机共享 共享网络打印机资源 命名管道 进程间通信机制 远程管理 远程管理服务器资源 身份认证 集成Windows身份验证(NTLM/Kerberos) 主要应用场景 1. 企业文件服务器 搭建Windows文件服务器,实现部门间文档共享 配合NTFS权限实现精细化的访问控制 2. NAS存储设备 群晖、威联通等NAS设备的核心协议 跨平台文件共享(Windows/Mac/Linux) 3. 域环境资源管理 Active Directory域中的SYSVOL/NETLOGON共享 组策略分发和登录脚本执行 4. 虚拟化环境 Hyper-V虚拟机文件存储 VMware vSphere的SMB存储支持 5. 备份与恢复 Veeam、Windows Server Backup等工具通过SMB进行备份存储 安全性演进 版本 安全特性 SMB 1.0 明文传输,易受中间人攻击 SMB 2.x 签名机制,防止篡改 SMB 3.0 端到端加密(AES-128-CCM)、完整性校验 SMB 3.1.1 预认证完整性保护、AES-128-GCM加密 ⚠️ 重要提示:由于SMB 1.0存在严重安全漏洞(如WannaCry利用的EternalBlue),建议在所有环境中禁用SMB 1.0。 与其他协议的对比: SMB/AFP/NFS/FTP/WebDAV(必读) 协议 适用场景 特点 SMB Windows环境、企业内网 集成AD、权限管理完善 AFP macOS旧版本 苹果专用,已逐步被SMB取代 NFS Linux/Unix环境 高性能、权限模型简单 FTP 参见FAQ章节 文件传输(上传/下载),详见 FAQ 章节 WebDAV 互联网文件访问 HTTP协议穿透防火墙 群晖NAS-文件服务-SMB/AFP/NFS/FTP 现代发展趋势 SMB over QUIC(Windows Server 2022/Azure):通过UDP协议提升广域网性能 SMB压缩:SMB 3.1.1支持传输过程中实时压缩 Linux支持增强:Samba项目使Linux/Unix系统完美兼容SMB协议 SMB协议凭借其成熟的安全性、与Windows生态的深度集成,仍是企业网文件共享的事实标准。 Z FAQ for SMB协议 Q: SMB 协议 vs. FTP 协议 SMB与FTP是2种经典的文件传输协议,设计理念和应用场景差异显著。 核心架构对比 特性 SMB FTP 设计哲学 网络文件系统(实时访问) 文件传输工具(上传/下载) 工作模式 有状态连接,保持会话 无状态,每次命令独立 传输通道 单端口(445) 双通道:控制(21)+ 数据(20/随机) 传输方向 双向实时读写 主要单向批量传输 协议层级 应用层+表示层(复杂) 纯应用层(简单) 功能特性对比 1. 文件访问方式 能力 SMB FTP 在线编辑远程文件 ✅ 直接打开修改 ❌ 需下载→编辑→上传 文件锁定机制 ✅ 支持Oplock/Lease ❌ 无锁定,易冲突 增量传输 ✅ 支持部分写入 ❌ 通常全文件覆盖 目录实时浏览 ✅ 像本地磁盘一样流畅 ⚠️ 需刷新,延迟明显 元数据保留 ✅ 完整保留权限/时间戳 ⚠️ 常丢失或需额外配置 2. 安全性对比 安全特性 SMB FTP 默认加密 ✅ SMB 3.0+ 强制加密 ❌ 明文传输(FTP) 安全版本 ✅ 内置AES加密 ✅ FTPS (SSL/TLS) / SFTP (SSH) 身份验证 ✅ Kerberos/NTLM集成 ⚠️ 基础明文或SSL证书 中间人防护 ✅ 签名+加密 ⚠️ 依赖FTPS/SFTP配置 防火墙友好度 ✅ 单端口445 ❌ 被动模式需开放随机端口 性能表现 场景 SMB FTP 小文件传输 更快(连接复用) 慢(每个文件建立连接) 大文件传输 快(支持多通道/压缩) 快(协议开销小) 广域网高延迟 ⚠️ 传统SMB较差 ✅ FTP更稳定 SMB 3.0+多通道 ✅ 聚合带宽 ❌ 不支持 网络中断恢复 ✅ 自动重连 ❌ 需重新传输 典型应用场景 SMB优势场景 ✅ Windows企业内网文件服务器 ✅ 域环境共享+权限精细控制 ✅ 实时协作编辑(如Office文档共享编辑) ✅ NAS网络存储(群晖/威联通等) ✅ 虚拟化存储(Hyper-V over SMB) ✅ 需要文件锁定的数据库共享场景 FTP优势场景 ✅ 互联网文件分发(软件下载站) ✅ 跨平台简单文件交换(Linux/Unix为主) ✅ 自动化脚本批量传输(ftp命令行工具) ✅ 匿名公开文件服务 ✅ 老旧系统兼容性要求 ✅ 高延迟/不稳定网络的大文件传输 协议变种对比 协议 本质 适用场景 FTP 原始明文协议 已淘汰,不安全 FTPS FTP + SSL/TLS 需要加密的传统FTP场景 SFTP SSH文件传输子系统 Linux/Unix安全传输标准 SMB 1.0 遗留协议 已禁用(安全风险) SMB 3.1.1 现代标准 企业安全文件共享首选 选型决策树 (必读) 需要实时在线编辑文件? ├── 是 → SMB └── 否 → 继续问 主要在Windows域环境? ├── 是 → SMB(集成AD权限) └── 否 → 继续问 是否互联网/广域网传输? ├── 是 → SFTP/FTPS(防火墙友好) └── 否 → 继续问 需要简单匿名下载服务? ├── 是 → FTP/HTTP └── 否 → SMB(内网)或 SFTP(安全) 现代趋势(必读) 趋势 说明 SMB崛起 Windows系统默认禁用SMB 1.0,SMB 3.0+成为企业标准 FTP衰落 浏览器逐步取消FTP支持(Chrome/Firefox已移除) SFTP替代 Linux环境首选SSH文件传输 云存储协议 S3 API、WebDAV等新兴协议分流传统场景 总结 SMB = 网络硬盘(像本地磁盘一样工作,适合协作) FTP = 文件快递(专门搬运文件,适合分发) 企业内网优先选 SMB 3.0+,互联网传输优先选 SFTP,遗留系统或简单匿名服务才考虑 FTP/FTPS。 Y 推荐文献 【Ubuntu24.04】CIFS协议挂载Windows共享文件夹的安全优化实践 - CSDN CVE-2020-1301: Windows SMB v1 远程代码执行漏洞通告 X 参考文献