Windows Server部署samba服务
以前没有u盘(U盘诞生于1999年),多台不同系统的主机如何共享文件?
最初,局域网内的多台安装dos系统的主机之间使用smb协议共享文件,smb协议运行在netbios协议之上
1991年,一个叫 安德鲁.崔杰尔 的男子手中有两台unix主机,一台dos主机。三台主机之间不能共享数据。他写了一个程序侦测三台主机各自分享数据时用到的通信协议,然后基于找到的通信协议 开发出一套文件系统叫smbserver,当他拿去申请注册的时候,因名字无意义为由被驳回。他尝试在字典里找一个词为自己的文件系统取名,找了老半天,最后找到了一个samba的词,这个词是一种拉丁舞蹈的名称,刚好包含smb字样,于是决定以samba为自己的文件系统命名。
后来微软在windows2000作业系统中引入smb协议,在此基础之上增加了一些功能,使其能在tcp/ip协议上运行,取名为cifs.
这样使得samba不仅能够在局域网中使用,也可以在网际网路中使用。
samba共享服务使用 135/tcp ,137/udp,138/udp.139/tcp,445/tcp 这几个协议与端口
139/tcp,445/tcp用于文件共享
137/udp,138/udp用于局域网neibios名称解析服务,使其在局域网内可以通过名字访问samba服务
samba服务的权限由文件系统的权限+共享目录的权限构成
也就是说 你创建账户,对该账户授权磁盘上的目录权限是不够的,还要设置samba服务共享目录权限设置。
samba服务也是属于内核级应用,也有自己的文件系统,即cifs,可以将远端的samba服务共享目录 挂载到本地,就像操作自己磁盘上的某个目录一样。
应用场景:
一个单位,每个人用的系统不一样,有人可能用的FreeNAS unix系统,有人可能用的ArchLinux系统,有人可能用的Windows系统,有人可能用的Mac OS系统,甚至有的可能用的Ubuntu,Fedora系统。不论使用何种系统,搭建samba服务,使得各种不同系统的主机之间能够共享数据。
如果有更大的需求,就会采用FreeNAS Unix系统部署私有企业存储。以web的方式进行管理,支持Windows,Linux,Mac OS,Android,IOS等多个客户端平台。做到手机,平板,PC实时同步
1.打开服务器管理器,点击选择仪表板,点击 添加角色和功能
2.点击下一步
3.选择 基于角色或基于功能的安装,点击下一步
4.选择 从服务器池中选择服务器,点击 下一步
5.勾选 文件服务器 和 文件服务器资源管理器(可选)
6.点击 添加功能
7.点击 下一步
8.勾选 SMB 1.0/CIFS文件共享支持和SMB带宽限制
9.点击 安装
10.等待安装完成
11.点击 关闭
12.点击 文件和存储服务
13.选择 共享,点击 若要创建文件共享,请启动新加共享向导
14.选择 SMB共享-快速,点击 下一步
15.选择 键入自定义路径,点击浏览
16.点击新建文件夹,然后 点击 选择文件夹
17.比如 此处建立目录:samba,点击 选择文件夹
18.输入 创建的 你所创建的目录路径,点击下一步
19.点击 下一步
20.点击 下一步
21.此处点击 自定义权限
22.点击 共享 选项卡,酌情设置 共享目录的权限。这是samba服务对共享目录设置的权限。可以设置 读取和写入。如果仅仅是希望客户端能够读取文件,设置权限 为 读取 即可,然后 点击 确定
23.点击 应用,再点击确定
24. 创建账户并授权
cmd /c 'net user samba @As1234 /add' :建立samba服务账户,账户名:samba 密码:@As1234
cmd /c 'icacls C:\samba /grant:r users:(OI)(CI)(RX,W)' :授权samba账号对文件系统的C:\samba目录拥有 读写 权限
25.防火墙开放端口:
netsh advfirewall add rule name=139 dir=in protocol=tcp action=allow localport=139
netsh advfirewall add rule name=138 dir=in protocol=udp action=allow localport=138
netsh advfirewall add rule name=137 dir=in protocol=udp action=allow localport=137
netsh advfirewall add rule name=135 dir=in protocol=tcp action=allow localport=135
netsh advfirewall add rule name=445 dir=in protocol=tcp action=allow localport=445
26.客户端连接samba服务。
运行 输入: \\samba服务地址\共享名
比如: \\192.168.1.155\samba,输入 账户名和密码 登录即可
27.图示如下。由于授权了 写入权限,还可以在此新建文件或目录文件
28.在权限设置的时候,你可以把everyone删除,添加你自己创建的samba账户,并酌情授权共享目录权限