文件和打印机共享的背后,与时俱进的SMB协议
共享
最早接触文件共享概念还是在学校机房中使用NetWare局域网的时候,后来随着Windows NT操作系统的兴起,网络通信协议NWLink从此淡出市场,加上Unix服务器操作系统的地位,TCP/IP 通信协议簇大获成功,成就了今天遍布全球的Internet网络。
今天当用户使用Windows桌面操作系统时,文件和打印机共享需求相当普遍,在局域网范围内的资源共享一般不会涉及到安全问题,然而,一旦接入互联网,那么由资源共享所引发的安全问题应得到足够重视,否则,共享资源、共享数据和计算机本身都可能受到来自互联网的入侵、渗透和破坏。
文件和打印机等资源共享的背后,是基于TCP/IP协议之上的文件共享协议,即SMB/CIFS协议,早期SMB v1.0协议最初被设计为在NetBIOS over TCP/IP(NBT)上运行,使用端口TCP 139进行会话服务,端口TCP/UDP 137进行名称服务,端口UDP 138进行数据报服务。
安全
默认情况下为了兼容性,NBT在Windows系统中默认安装并启用,文件共享和相关信息会暴露在整个网络上,在本地网络中不是一个大问题,但如果暴露在互联网上,就产生相当安全风险。中间人(MITM)和NetBIOS名称服务(NBNS)欺骗攻击在支持NTB的网络中很常见。
SMB协议可能依赖NetBIOS与不支持通过TCP/IP直接托管SMB的旧设备通信,但如果没有老旧设备,则应当彻底关闭NetBIOS支持。虽然现在主流Windows操作系统上的NetBIOS(NBT)是一种完全独立于SMB的服务,它不依赖SMB的任何东西,是over TCP/IP之上的,SMB协议在通过NBT运行时依赖于139端口,不建议这样做。对于通过TCP/IP直接托管SMB时,端口号为TCP 445。Windows操作系统默认为同时开启139和445端口,哪个先响应就用哪个通信。
SMB协议的早期版本在WannaCry勒索软件攻击中通过一个名为EternalBlue的零日漏洞被利用。WannaCry利用了使用过时的SMB协议版本的传统版本的Windows电脑。WannaCry是一种网络蠕虫,它的传输机制旨在自动传播。传输代码扫描易受EternalBlue攻击的系统,然后安装DoublePulsar(一种后门工具),并执行病毒副本。
一台受感染的计算机将搜索其Windows网络中接受TCP端口135-139或445流量的设备,表明该系统被配置为运行SMB,然后它将启动一个与设备的SMB v1连接,并使用缓冲区溢出来控制系统,并安装攻击的勒索软件组件。这意味着WannaCry可以在没有受害者参与的情况下自动传播。微软公司此后发布了对Windows XP、Windows Server 2003、Windows 8、Windows Vista、Windows 7、Windows 8.1、Windows 10、Windows Server 2008、Windows Server 2008 R2、Windows Server 2012和Windows Server 2016的安全更新,以防止这一漏洞。
历史
SMB最初是由IBM的Barry Feigenbaum在1983年设计的,目的是将DOS INT 21h本地文件访问变成一个网络文件系统,最初被设计为使用IP端口139和UDP端口137和138在TCP/IP(NBT)上的NetBIOS之上运行。
在NetBIOS会话服务上运行的软件应用程序通过TCP端口139的NetBIOS名称来定位和识别对方。微软将SMB协议与他们1990年开始开发的LAN Manager产品合并,并继续在Windows for Workgroups中为该协议增加功能。1996年,微软发起了一项倡议,将SMB重新命名为通用互联网文件系统(CIFS),并增加了更多的功能,包括支持符号链接、硬链接、更大的文件大小,并初步尝试支持通过TCP 445端口的直接连接,而不需要NetBIOS作为传输方式。
到了微软Windows 2000,微软已经将SMB改为通过445端口操作。SMB仍然使用445端口。
SMB 1.0性能很差,微软官方解释说1.0只是一个块级而不是流式协议,是为小型局域网设计的。SMB 2.0,通过将其数百条命令和子命令减少到19条,提高了协议的效率。微软继续投资于改善SMB的性能和安全性。与Windows 8和Windows Server 2012一起推出的SMB 3.0带来了几个重大变化,增加了功能,提高了SMB2的性能,特别是在虚拟化数据中心。此外它还引入了一些安全方面的改进,如端到端加密和新的基于AES的签名算法。
服务
SAMBA最初是SMB服务器,但由于SMB服务器是一个实际的产品,所以不得不改名。SMB是CIFS的前身。SMB(服务器信息块)和CIFS(通用互联网文件系统)是协议。Samba实现了CIFS网络协议。Samba服务可以提供文件和打印共享服务,也可以作为Windows域服务器,并与Windows系统无缝对接。Samba通常被称为网络文件系统,可以安装在各种操作系统平台上,包括Linux、大多数常见的UNIX平台、OpenVMS和OS/2。
区别
SMB协议对应着文件系统SMBFS,起源于Samba项目,这个文件系统已经被废弃,但为了向后兼容,还没有被删除,但没有人维护,而Linux操作系统对文件系统CIFS提供了原生支持,不依赖Samba服务。
优化
如果有类似的硬件,Samba服务在速度上肯定会比其他系统有竞争力,只要配置得当,优于NFS和FTP。以下都是重要的性能配置选项,开启后可以成倍提高网络文件共享读写速度。#修改samba服务配置文件smb.conf,在global节添加以下配置 read raw = yes #允许samba以64KB块大小进行读写 write raw =yes socket options = TCP_NODELAY #不等确认收到就继续发送数据 socket options = IPTOS_LOWDELAY #用吞吐量换取低延迟,影响路由器
实际测评表明,TCP_NODELAY 配置选项可以翻倍提升性能,其实真正的原因是微软操作系统所实现的TCP/IP协议栈在发送TCP ACK时很慢,开启这个配置后绕过了这个BUG。
一般使用如下命令测试Samba服务的配置文件是否正确。# testparm /etc/samba/smb.conf # smbcontrol all reload-config #强制配置立即生效 # smbcontrol all reload-printers #强制刷新打印机
2002年华为到底经历了什么?任正非每天都在噩梦醒来时哭泣2002年,深圳华为基地,近6000名新员工,都在等着任正非,非要他给大家一个解释,明明是让大家来做研发,凭什么现在要去当维修工!更有甚者,直接冲上讲台,对着任正非吼你一口气招这么
美国芯片,美国制造!游戏规则将变?据CNBC报道,苹果首席执行官库克周二在亚利桑那州的一次活动上证实,苹果将购买美国芯片厂制造的芯片,拜登也在会上发表了讲话。库克说现在,由于这么多人的辛勤工作,这些芯片可以自豪地印
人类祖先是鱼?前段时间,中国科学家证实人类祖先是鱼!这个新闻一出,网友就坐不住了!有喊怎么我们的祖先怎么从猴变成了鱼了!并且人类祖先也不是猴,是南方古猿。这是同物种的不同亚种,是不一样的!有没有
小米13系列全配置曝光直屏骁龙8Gen2IP68预计售价大涨不出意外的话,小米13系列可以确定重新定档于12月11日,而即将发布的小米13和小米13Pro,无论是外观ID,还是整体的配置也被曝光得差不多,产品的定位上还是延续上一代一大一小双
三季度全球智能手机市场谁产量最高?市场调查报告出炉时间来到2022年第四季度,关于上一季度的智能手机市场调查报告正在陆续出现。现在,TrendForce集邦咨询发布了第三季度全球智能手机市场情况报告。这份报告中提到,第三季度全球智
老机型重获新生的关键OPPO高管透露原因近日,OPPO高管表示,目前OPPO已经在18个月前发布的Reno6刷新了ColorOS13之后,再次通过泰尔实验室36个月抗老化认证。此举是不是预示着,OPPO老用户的旧机型也可
珍藏版!百度网盘超级会员SVIP版大家好,又到了给各位小伙伴分享资源的一天!前两天听到个冷笑话第一次认识byte(字节B)这个单位是在百度网盘下载过程之中。哈哈哈解除百度网盘限速的办法有很多,我以前就分享过几款,例
评测永久在线,超长续航的笔记本,SurfacePro9SQ3准备好了吗?每年十月的微软发布会,我们都能迎来Surface系列的最新更新。今年,SurfacePro9SurfaceLaptop5SurfaceStudio2三台WindowsPC一同上阵,
你的快递,动了记者从国家邮政局获悉,11月27日以来,全国快递日均业务量连续稳步上涨,特别是12月2日至4日,连续三天快递日均业务量超3亿件。国家邮政局相关负责人表示,我国快递日均业务量实现迅速
从海归学者到创业人才专注智能移动机器人创新研发日前,秦创原原力榜发布,清控科创西部创新加速中心入驻企业西安天之博特科技有限公司从全省千余家科创企业中脱颖而出,成功入围秦创原原力榜,获得了广泛关注。而在荣光的背后,团队也为项目付
首批计划2024年投入运营!金山这个总投资约180亿元的项目最新进展来了今年以来,阿里云华东智能算力中心在金山加快建设。其中,位于金山区枫泾镇的阿里飞天园区项目是阿里云华东智能算力中心重要组成部分,项目总投资约180亿元,总建筑面积约26万平方米,总占