Samba的认识
Samba服务
samba是一个网络服务器,用于Linux和Windows之间共享文件。
samba端口号
samba (启动时会预设多个端口)
数据传输的TCP端口 139、445
进行NetBIOS名称解析之类工作的UDP端口就 137、138
Samba的功能:
① 分享档案与打印机服务;
② 可以提供用户登入 SAMBA 主机时的身份认证,以提供不同身份者的个别数据;
③ 可以进行 Windows 网络上的主机名解析 (NetBIOS name)
④ 可以进行装置的分享 (例如 Zip, CDROM...)
Samba工作原理:
Samba服务功能强大,这与通信是基于SMB协议有大的关系。SMB协议不仅能够提供目录和打印机共享,还支持认证和权限设置等功能。在早期,SMB运行于NBT协议(NetBIOS over TCP/IP)上,使用UDP协议的137、138及TCP协议的139端口,但随着后期开发,它可以直接运行于TCP/IP协议上,没有额外的NBT层,使用TCP协议的445端口。
通过Samba服务,Windows用户可以通过【网上邻居】窗口查看到Linux服务器中共享的资源,同时Linux用户也能够查看到服务器上的共享资源。Samba服务的具体工作过程如图:

协议协商
客户端在访问Samba服务器时,首先由客户端发送一个SMB negprot请求数据报,并列出它所支持的所有SMB协议版本。服务器在接收到请求信息后开始响应请求,并列出希望使用的协议版本。如果没有可使用的协议版本则返回oXFFFFH信息,结束通信。
建立连接
当SMB协议版本确定后,客户端进程向服务器发起一个用户或共享的认证,这个过程是通过发送SesssetupX请求数据报实现的。客户端发送一对用户名和密码或一个简单密码到服务器,然后服务器通过发送一个SesssetupX请应答数据报来允许或拒绝本次连接。
访问共享资源
当客户端和服务器完成了协商和认证之后,它会发送一个Tcon或SMB TconX数据报并列出它想访问网络资源的名称,之后服务器会发送一个SMB TconX应答数据报以表示此次连接是否被接受或拒绝。
断开连接
连接到相应资源,SMB客户端能够open SMB打开一个文件,通过read SMB读取文件,通过write SMB写入文件,通过close SMB关闭文件。
Samba与ftp、nfs的区别
从跨平台角度说
samba和ftp都支持跨平台操作, 而nfs不支持windows平台
从挂载角度说,
samba, nfs可以把远程目录挂载到本地目录上, 对用户是透明的. 而ftp则不行
从使用范围上说,
samba, nfs安全性比较差,最好是限定在局域网内.
而ftp则不同,其提供了鉴权机制,既可以面向内网, 也可以面向公网.
从面向对像来说,
三者都支持文件, 但samba还支持打印机, 以及作windows域管理器.
从性能的角度说,
Samba,nfs要优于Ftp。
Samba与NFS在功能上是相仿的,不同点在于其跨平台性质,Samba支持DOS、Windows、OS/2,Linux以及其他平台访问
Samba的认识的更多相关文章
- samba服务
安装samba服务步骤ps -e 查看进程ps -e | grep 文件名 管道符的使用rpm -qa 安装包的查看rpm -qa | grep samba 抓Samba安装包 注释:包与包之间有依赖 ...
- Linux自动共享USB设备:udev+Samba
一.概述 公司最近要我实现USB设备插入Ubuntu后,自动共享到网络上,能像Windows共享一样(如\\192.168.1.10)访问里面的内容,不需要写入权限.当时听完这需求,我这新人表示惊呆了 ...
- OpenWrt中开启usb存储和samba服务
在从官网安装的WNDR3800 15.05.1版本OpenWrt中, 不带usb存储支持以及samba, 需要另外安装 1. 启用usb支持 USB Basic Support https://wik ...
- Ubuntu下配置Samba服务器
每次配置Samba 都需要上网去查资料,而且有一些不一定适合.所以自己就简单记录一下 1.Samba的安装 sudo apt-get insall samba // (sudo get temp ro ...
- Ubuntu 上搭建 Samba 服务器
由于经常要接收同事发送的一些文件,U盘拷来拷去的很麻烦. 在本机Ubuntu上搭了各Samba服务器,过程中遇到点小问题,记录一下 sudo apt-get install samba 创建一个共享目 ...
- CentOS 6.3下Samba服务器的安装与配置方法(图文详解)
这篇文章主要介绍了CentOS 6.3下Samba服务器的安装与配置方法(图文详解),需要的朋友可以参考下 一.简介 Samba是一个能让Linux系统应用Microsoft网络通讯协议的软件, ...
- samba共享目录
samba 原理:在linux机器上共享一个目录出来,让windows通过网上邻居去访问 (i)共享一个不需要输入用户名和密码就能访问的目录(可读不可写) 一.打开配置文件: vim /etc/sam ...
- 配置Samba共享服务器
安装samba: sudo apt-get install samba samba-common 由于是挂载另一个磁盘,并作为共享文件存放地: 列出磁盘名和ID air@air-device:~$ s ...
- CentOS 简单设置samba服务
1.安装 yum -y install samba 2.设置配置文件 1) 备份Samba的配置文件:cp /etc/samba/smb.conf /etc/samba/smb.conf.bak ...
- samba服务器安装,共享nginx目录
Samba是一个能让Linux系统应用Microsoft网络通讯协议的软件,类似于win的网上邻居,让windows和linux实现文件共享 1.安装smaba服务 yum install samba ...
随机推荐
- Ubuntu系统没声音
问题: http://www.linuxdiyf.com/linux/22936.html $aplay -l 得到下面的信息ubuntu aplay: device_list:268: no so ...
- Postman之 SSL证书配置随手记
参考文档: https://learning.getpostman.com/docs/postman/sending_api_requests/certificates/ 随着 https 的推动,更 ...
- 浅析flex 布局
Flex基本概念: 容器默认存在两根轴:水平的主轴(main axis)和垂直的交叉轴(cross axis).主轴的开始位置(与边框的交叉点)叫做main start,结束位置叫做main end: ...
- 面向对象(oop)特征
上课时老师不止一次和我们说过,面向对象是Java基础的重中之重!!所以一定要扎实基本功,代码都是呆子活,重要的是思想! 一般来说oop的三大特性是:封装.继承和多态,上次笔者看到有把抽象也归类其中,不 ...
- EntityManager的merge()方法
EntityManager的merge()方法相当于hibernate中session的saveOrUpdate()方法: 用于实体的插入和更新操作:
- SqlSugar源码学习
序言 public virtual IInsertable<T> Insertable<T>(dynamic insertDynamicObject) where T : cl ...
- linux C线程
一个应用程序可以启动若干个线程: 线程,是程序执行的最小单位: 一般一个最简单的程序最少有一个线程,就是程序本身,也是主函数: 一个线程阻塞不会影响另一个线程: 多线程的进程可以尽可能多的利用系统CP ...
- Vuex的基本原理与使用
我们需要知道 vue 是单向数据流的方式驱动的 什么是vuex? 为什么要使用vuex ? - 多个视图依赖于同一状态. - 来自不同视图的行为需要变更同一状态. vuex 类似Redux 的状态管理 ...
- zookeeper系列(一)zookeeper图形化的客户端工具
追加一个zookeeper图形化的客户端工具: 1.zookeeper图像化客户端工具的下载地址:https://issues.apache.org/jira/secure/attachment/12 ...
- C# how to properly make a http web GET request
C# how to properly make a http web GET request EDIT 23/11/17 Updated to throw out examples using asy ...