samba服务1——简介

一、简介

samba是什么?

samba是一个文件共享服务器。它是局域网中一种常见的服务,在企业领域中应用较广,同时也能控制共享的权限。

早期数据共享的方式有哪些?

  1. windows中最常见的是“网上邻居”。“网上邻居”使用的是文件系统是CIFS(Common Internet File System,中文称通用互联网文件系统),使用的协议是Netbios进行数据共享。特点是只能在同一个局域网中使用,共享方与访问方都必须是windows系统,无法跨网段,无法跨路由。
  2. Linux最常见的是NFS(Network File System,中文称网络文件系统)服务,同样的,共享方与访问方都必须是Linux(发行版)系统。

由于无法跨系统共享数据,在 1991 年一个名叫 Andrew Tridgell(如下图)的大学生也有这样的困扰,他手上有三台机器,分别是跑 DOS 的个人计算机、DEC公司的 Digital Unix 系统以及 Sun的 Unix 系统。在当时, DEC 公司有发展出一套称为 PATHWORKS 的软件,这套软件可以用来实现DEC 的 Unix与个人计算机的 DOS 这两个操作系统之间的数据共享,可惜让 Tridgell 觉得较困扰的是,Sun 的 Unix无法藉由这个软件来达到数据分享的目的。 为了解决这样的的问题,于是决定自己编写程序去侦测(即抓包)当 DOS 与 DEC 的 Unix系统在进行数据分享传送时所使用到的通讯协议信息,然后将这些重要的信息摘取下来, 并且基于上述所找到的通讯协议而开发出了Server Message Block (SMB) 这个文件系统,而就是这套 SMB 软件就能够让 Unix 与 DOS 互相的共享数据。
既然写成了软件,Andrew Tridgell想一想,总需要注册成为专有的知识产权吧!但是SMB简写没有任何的意义,会和其他的东西名称冲突,于是别人不给通过,无法注册。既然如此的话,那么能不能在字典里面找到相关的字词可以做为知识产权注册呢?翻了老半天,哎!这个SAMBA刚好含有SMB又是热情有劲的拉丁舞蹈的名称,不然就用这个名字来做为知识产权好了!这成为我们今天所使用的SAMBA服务的名称由来。

在这里插入图片描述

为什么当年不直接用ftp呢?

ftp的局限性在于——无法直接在服务器端修改数据。也就是说,你没办法直接打开这个文件修改然后保存,必须从远程服务器端下载回客户端本地,修改完毕然后上传。也因此该文件在服务器与客户端都会存在,这个时候,万一如果有一天修改了某个文件, 却忘记将数据上传回服务器端,那么等过了一阵子之后,自己都不知道谁是最新的版本。

二、Samba与Netbios协议

  • IBM开发的NetBIOS协议是为了局域网内少数计算机进行通信的协议;
  • Samba就是基于Netbios协议开发的;可以和windows通信,但是只能在局域网中。
  • 我们都知道,计算机是通过IP来进行数据通信的。但是在早期,windows操作系统的ip配置还是相当繁琐的,不像今天直接右下角图标打开就可以配置。那个时候要想进行局域网通信,不是通过ip地址,而是通过主机名,直到今天为止,同一个局域网内的windows主机名都不能一样,否则报错。原因在于windows的局域网通信靠的是NetBIOS协议。

smaba开发的目的就是让GNU/Linux与windows可以顺畅的进行数据共享,所以这么一分析,那么samba肯定要需要支持Netbios协议或者是基于Netbios开发的。

三、windows的共享访问方式

其实访问windows的共享很简单,首先共享一个文件夹,右键—>属性—>共享,将对应的用户给权限即可完成。
在这里插入图片描述

如果要访问的话,直接 “ windows +R键 ",输入“\IP地址”即可。这个共享方可以是普通的电脑主机,也可以是服务器。
在这里插入图片描述

windows的共享很简单,为什么还需要Linux(发行版)系统去专门搭建samba服务进行局域网共享呢?优势在哪里?

如果这是一台windows服务器,共享时上传的是木马或者病毒,一台服务器中毒,全部局域网的主机都中招,后果还是非常严重的。有人说我不用服务器,用普通的电脑主机可以吗?不行,一些杀毒软件如果发现你本地主机开了windows共享,会建议你关掉。原因在于绝大多数的病毒和木马都是通过网络邻居进行传递,再者,137、138、139、445这四个端口是windows最常见的病毒木马扩散端口。换句话说,windows搭建共享服务,优点在于简单快速,缺点是容易遭受病毒木马的攻击,不够稳定,撑不到一定时间windows服务器就可能会挂掉。
GNU/Linux搭建samba局域网共享,优势在于:windows大量的病毒木马无法感染Linux,两者的软件压根不通用,LIinux对于.exe这种是不认识的。

四、samba的主要应用

①、文件共享(最主要作用)
②、打印服务器
③、samba登陆时身份验证
④、由于samba基于Netbios,所以可以进行 windows的主机名解析

五、常见文件服务器软件的比较

如下图:
在这里插入图片描述 -----部分内容参考**《鸟哥的Linux私房菜》**