[网络协议/文件] `SMB` 协议:一种Windows主流的局域网网络文件共享协议

0 序

  • 尝试基于群晖NAS的SMB协议服务,实现群晖NAS的文件夹映射到同一局域网电脑的虚拟磁盘上。

"群晖NAS的网络接口一般都是千兆网口,换算成理论上的网速大约是125MB/s,实际大文件持续传输速度大约为90-110MB/s。这个是内网访问速度 ,与外网访问速率 相比是相当快的。所以,建议把NAS放在距离你较近的位置,若办公为主就放办公室,家庭娱乐为主就放在家里,充分利用局域网的高速优势。"

  • 根据笔者的观察,所工作过的几家公司、及诸多打印店均有基于局域网使用SMB协议的情况。

说明 SMB 协议的实用性还是很高的。

1 概述:SMB协议

  • SMBServer Message Block)协议是一种网络文件共享协议 ,广泛应用于家庭网络环境企业网络环境中。
  • SMB协议 是由【微软】开发的网络通信协议,主要用于在局域网内实现文件、打印机和其他资源的共享。

它工作在应用层,通常运行在TCP/IP协议之上,使用端口445 (现代版本)或139 (早期版本配合NetBIOS)。

发展历史

  • SMB 1.0(1980年代):最初版本,安全性较低
  • 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

现代发展趋势

  1. SMB over QUIC (Windows Server 2022/Azure):通过UDP协议提升广域网性能
  2. SMB压缩:SMB 3.1.1支持传输过程中实时压缩
  3. Linux支持增强:Samba项目使Linux/Unix系统完美兼容SMB协议

SMB协议凭借其成熟的安全性、与Windows生态的深度集成,仍是企业网文件共享的事实标准

Z FAQ for SMB协议

Q: SMB 协议 vs. FTP 协议

  • SMBFTP是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 推荐文献

X 参考文献

相关推荐
哇蛙蛙15 小时前
H3CNE--21.RIP
网络·经验分享·网络协议·tcp/ip·计算机网络·智能路由器
孙严Pay15 小时前
快捷支付和网关支付,到底有啥不一样?
笔记·科技·计算机网络·其他·微信
大地的一角2 天前
(计算机网络)传输层协议原理
网络协议·计算机网络·udp
DARLING Zero two♡2 天前
【计算机网络】简学深悟启示录:udp&&tcp协议
tcp/ip·计算机网络·udp
头疼的程序员2 天前
计算机网络:自顶向下方法(第七版)第七章 学习分享(四)
网络·学习·计算机网络
Accerlator3 天前
2026 年 3 月 30 日(计算机网络)
计算机网络
超自然祈祷3 天前
计算机网络的要素
计算机网络
头疼的程序员3 天前
计算机网络:自顶向下方法(第七版)第七章 学习分享(三)
网络·学习·计算机网络
未来转换3 天前
计算机网络之HTTP协议详解
网络协议·计算机网络·http