在 5 分钟或更短时间内解释通用 Internet 文件系统 (CIFS)
已发表: 2022-12-20通用 Internet 文件系统 (CIFS) 是一种协议,可在特定网络上的各种机器之间提供对文件、打印机和串行端口的访问。
通过这种访问,客户可以打开、阅读和编辑自动保存在本地机器上的共享文档。
用户还可以访问进程间通信服务和打印队列。
CIFS 于 1980 年代初由 IBM 开发。
CIFS 的工作原理
CIFS 遵循客户端-服务器模型。 涉及三个实体; 客户端、应用程序和服务器。
- 客户端实现大多数消息的来源协议。
- 服务器实现协议并提供大部分功能(服务)。
- 应用程序可以是执行图形用户界面、文件管理或文字处理等功能的软件。
这就是 CIFS 的工作原理;
- 用于访问共享资源的 NetBIOS 会话在客户端和服务器之间建立。
- 协商过程是客户端和服务器确定将使用的方言的地方。
- 客户端通过唯一标识符向服务器提交身份验证凭据,主要是用户名和密码。
- Active Directory 主要处理身份验证过程。 但是,CIFS 不直接处理身份验证。
- 如果认证成功,服务器返回唯一标识符。
- 服务器检查客户端是否具有所需的权限以及共享名称是否有效。 如果所有这些详细信息都有效,则客户端将被授予访问共享资源(如文件和文件夹)的权限。
CIFS 协议功能
运输独立性
CIFS 协议对服务器和客户端之间发送SMB 消息的传输协议没有任何要求。 CIFS 只是承载了一个面向连接的协议。
文件存取
客户端/用户可以打开、读取、修改和关闭目标服务器上的多个文件。 服务器的任务是文件共享,这意味着多个客户端可以在不同设备上同时打开和读取同一个文件。
具有文件、目录和卷属性
CIFS 协议可以查询,也可以在有限的能力下设置目录、文件和卷属性。 CIFS 还支持访问控制列表 (ACL)。
扩展子协议
CIFS 协议支持各种子协议,这些子协议提供对附加服务器功能的直接访问。
支持命名管道进程间通信
客户端可以打开、写入、读取和关闭特定服务器上的命名管道。 命名管道提供服务器和客户端服务之间的通信路径。
灵活连接
一个客户端可以连接到多个服务器。 这样的客户端也可以与服务器建立一个或多个连接。
支持特征协商
协议支持的功能集和方言是在每个连接的基础上协商的。
文件和记录锁定和安全缓存
CIFS 协议支持记录和文件锁定。 相同的协议允许机会性文件锁定,使客户端有机会缓存数据以获得更好的性能。
目录和文件更改通知
CIFS 协议上的客户端可以发布请求,以便在资源发生更改时得到通知,例如目录中的文件或特定服务器上的目录。
支持分布式文件系统 (DFS)
DFS 在多个服务器上创建一个包含资源的全局命名空间。
支持多个安全上下文
客户端可以通过特定连接使用和创建一个或多个安全上下文。
使用 CIFS 的先决条件
CIFS 需要底层网络传输(通常是面向连接的)。 但是,在某些情况下,CIFS 消息可以通过无连接传输进行传输,只需进行一些小的修改。
在通过面向连接的传输交换 CIFS 消息之前,必须建立连接。
对于通过此类网络交换的消息,CIFS 将假定以下一种或多种资源可用;
- 将打印作业发送到打印机以提供打印服务的本地打印队列。
- 本地文件系统或数据库被呈现为文件系统以实现文件共享。 在这种情况下,资源称为对象存储。
- 使用命名管道抽象的进程间通信需要 CIFS 服务器内置的合适仿真或支持命名管道的文件系统。
服务器还应该具有或提供对密码数据库的访问以进行身份验证。
密码数据库存储 NT LAN Manager (NTLM) 和 LAN Manager (LM) 密码哈希以支持质询或响应身份验证。
为 Windows 配置 CIFS
大多数用户永远不会使用 CIFS,这就解释了为什么该功能在 Windows 10 和 11 上默认被禁用。
请按照以下步骤使其正常工作;
- 转到控制面板并单击程序和功能。 在左侧,单击打开或关闭 Windows 功能。
- 向下滚动直到您看到SMB 1.0/CIFS 文件共享支持并勾选该框。 单击 + 图标以查看所有选中的选项
上述步骤将打开 CIFS。 但是,您需要为 CIFS 配置您连接的网络。 这是过程;
- 转到控制面板l 主页并单击网络和 Internet 。
2. 单击网络和共享中心。 在左侧,单击更改高级共享设置。
3. 单击更改高级共享设置。 您现在可以继续打开网络发现并打开文件和打印机共享。 单击“保存更改”。
在文件夹上设置 CIFS
为了演示的目的,我们将在磁盘 E上建立一个名为“Sample Folder”的文件夹。
- 右键单击Sample Folder ,单击Properties,然后选择Sharing 。
2. 单击共享。
但是,您必须注意,列出的用户只是当前在您的 Windows 计算机上设置的用户。
如果收件人想要访问已发送的文档,他们还必须在他们这边配置所有内容。
CIFS 与 SMB:差异
在检查差异之前,有必要了解什么是服务器消息块 (SMB)。
服务器消息块旨在允许客户端读取、写入和编辑服务器中的文件。 在这种情况下,服务器是局域网 (LAN)。
多年来的SMB
- 中小型企业 1.0 。 SMB 的第一个版本等同于 CIFS。 第一个变体是为 Windows NT 4.0 创建的,并且通过NetBIOS 接口进行通信。
- 中小企业 2.0。 此版本由 Microsoft 于 2006 年通过其 Windows Vista 操作系统推出。 引入的一些特性包括更好的可扩展性、对符号链接的支持以及改进的消息签名。
- 中小企业 2.1 。 此版本于 2007 年与 Windows 7 同时推出。2.1 版提供改进的性能优化和新的锁定机制。
- 中小型企业 3.0 。 此版本于 2012 年与 Windows 8 同时推出。SMB 3.0 最初名为 SMB 2.2,但后来更名。 此版本创造了通过远程直接内存访问 (RDMA) 进行远程存储访问的可能性。
- 中小型企业 3.1.1 。 这是撰写本文时的最新版本。 SMB 3.1.1 于 2015 年为 Windows 10 创建,并在身份验证之前引入了完整性检查。 此版本还使用Galois/Counter Mode (GCM) 进行加密。
许多人混淆了 CIFS 和 SMB。 值得注意的是,SMB 的推出早于 CIFS。
微软在 1990 年代对 SMB 进行了改进,创建了 CIFS,这使 CIFS 成为 SMB 的一种方言。 不过,微软一直在不断完善CIFS,目前的版本是SMB 3.1.1。
这些是 CIFS 和 SMB 3.1.1 之间的主要区别
中小企业 3.1.1 | 国际金融中心 | |
创建年份 | 由 IBM 于 1980 年代初创建 | 微软于 1990 年代初创建为 SBM 的增强版 |
表现 | SMB 3.1.1 的创建是为了解决 CIFS 和早期 SMB 版本上的大部分挑战。 存在有助于保护服务器中文件的预身份验证检查 | CIFS在创建的时候,在文件传输、安全等方面存在很多问题。 |
验证 | SMB 3.1.1 使用 AES 身份验证为服务器上共享的文件提供安全性。 用户必须提供用户名和密码才能访问文件 | CIFS 缺少身份验证。 因此,文件在网络上不受保护。 |
数据存储 | SMB 3.1.1 使用 32 或 64 位数据存储字段,为大文件存储开放。 | 使用类似于 HTTP 和 FTP 协议的 IP/TCP 协议。 |
在职的 | 一种客户端-服务器通信协议,用于共享对网络资源的访问。 | 客户/用户在位于同一网络上的另一个计算机系统上的服务器上请求文件。 |
CIFS 的缺点是什么?
- 缺乏认证。 CIFS 的最大缺点之一是它缺乏身份验证,这与后来的 SMB 版本不同。
- 处理有限的文件大小。 CIFS 可能不适合超大文件,导致延迟,甚至可能在传输过程中造成损坏。
结论
尽管云文件共享和访问服务似乎正在接管,但像 CIFS 这样的传统协议仍然有它们的空间。 支持通过 TCP 端口 445 直接连接是 CIFS 的最大卖点之一。 尽管微软现在专注于推进 SMB,但 CIFS 不能被遗忘,因为它是 SMB 方言之一。
您还可以探索如何在 Windows 11/10 中运行系统文件检查器。