Linux文件共享服务之Samba
目录
Samba
Samba是一个能让Linux系统应用Microsoft网络通讯协议的软件,而SMB是Server Message Block的缩写,即为服务器消息块 ,SMB主要是作为Microsoft的网络通讯协议,后来Samba将SMB通信协议应用到了Linux系统上,就形成了现在的Samba软件。后来微软又把 SMB 改名为 CIFS(Common Internet File System),即公共 Internet 文件系统,并且加入了许多新的功能,这样一来,使得Samba具有了更强大的功能。
samba服务的进化
- smb协议:server message block 服务消息块
- cifs协议 :common internet file system 通用互联网文件系统
Samba最大的功能就是可以用于 Linux 与 windows 系统直接的文件共享和打印共享,Samba既可以用于windows与Linux之间的文件共享,也可以用于Linux与Linux之间的资源共享,由于NFS(网络文件系统)可以很好的完成Linux与Linux之间的数据共享,因而 Samba较多的用在了Linux与windows之间的数据共享上面。
SMB是基于客户机/服务器型的协议,因而一台Samba服务器既可以充当文件共享服务器,也可以充当一个Samba的客户端。例如,一台在Linux 下已经架设好的Samba服务器,windows客户端就可以通过SMB协议共享Samba服务器上的资源文件,同时,Samba服务器也可以访问网络中其它windows系统或者Linux系统共享出来的文件。Samba在windows下使用的是NetBIOS协议,如果你要使用Linux下共享出来的文件,请确认你的windows系统下是否安装了NetBIOS协议。
组成Samba运行的有两个服务,一个是SMB,另一个是NMB;SMB是Samba 的核心启动服务,主要负责建立 Linux Samba服务器与Samba客户机之间的对话, 验证用户身份并提供对文件和打印系统的访问,只有SMB服务启动,才能实现文件的共享,监听TCP 139端口;而NMB服务是负责解析用的,类似与DNS实现的功能,NMB可以把Linux系统共享的工作组名称与其IP对应起来,如果NMB服务没有启动,就只能通过IP来访问共享文件,NMB监听UDP的137和138 端口
例如:某台Samba服务器的IP地址为192.1.68.10.10,对应的工作组名称为 xie,那么在Windows的IE浏览器输入下面两条指令都可以访问共享文件。其实这就是Windows下查看Linux Samba服务器共享文件的方法:
\\192.168.10.10\共享名
\\xie\共享名
smaba服务主要有两个程序
- smb:提供对服务器中文件的共享访问,监听TCP139端口
- nmb:提供基于netbios主机名称的解析,监听UDP 137、138端口
程序目录: /usr/lib/systemd/system/smb.service (Rhel7) 或 /etc/init.d/smb (Rhl6)
配置文件: /etc/samba/smb.conf
用户访问samba server一共有四种验证方式 :
- share:用户访问Samba Server不需要提供用户名和口令, 安全性能较低。
- user:共享目录只能被授权的用户访问,由Samba Server负责检查账号和密码的正确性。账号和密码要在本Samba Server中建立。
- server:依靠其他Windows NT/2000或Samba Server来验证用户的账号和密码,是一种代理验证。此种安全模式下,系统管理员可以把所有的Windows用户和口令集中到一个NT系统上,使用Windows NT进行Samba认证, 远程服务器可以自动认证全部用户和口令,如果认证失败,Samba将使用用户级安全模式作为替代的方式。
- domain:域安全级别,使用主域控制器(PDC)来完成认证
Samba的配置
服务器端
1:关闭 SElinux 和配置防火墙
setenforce 0
firewall-cmd --add-port=139/tcp ; firewall-cmd --add-port=137-138/udp
2:安装samba程序: yum -y install samba
3:修改配置文件 : /etc/samba/smb.conf
-----------------------------global settings-----------------------------------------
[global] //该设置都是与Samba服务整体运行环境有关的选项,它的设置项目是针对所有共享资源的
workgroup = MYGROUP //设定 Samba Server 所要加入的工作组或者域。
server string = Samba Server Version %v //设定 Samba Server 的注释,可以是任何字符串,也可以不填。宏%v表示显示Samba的版本号。
log file = /var/log/samba/log.%m //设置Samba Server日志文件的存储位置以及日志文件名称。在文件名后加个宏%m(主机名),表示对每台访问Samba Server的机器都单独记录一个日志文件。如果pc1、pc2访问过Samba Server,就会在/var/log/samba目录下留下log.pc1和log.pc2两个日志文件
max log size = 50 //最大日志大小为50kb
security = user //用户访问samba的验证方式,一共有四种,当为 share 时,则是允许匿名访问
passdb backend = tdbsam //passdb backend就是用户后台的意思。目前有三种后台:smbpasswd、tdbsam和ldapsam;sam是security account manager(安全账户管理)的简写
load printers = yes //设置是否在启动Samba时就共享打印机。
cups options = raw
----------------------------Share Definitions----------------------------------------
[homes] //默认的共享,默认共享samba用户创建时创建的home目录,可以删除
comment = Home Directories //comment是对该共享的描述,可以是任意字符串。
browseable = no //browseable用来指定该共享是否可以浏览
writable = yes //writable用来指定该共享路径是否可写
valid users = %S //允许访问该共享的用户
invalid users //禁止访问该共享的用户
valid users = MYDOMAIN\%S
[printers] //默认的共享,共享打印,可以删除
comment = All Printers
path = /var/spool/samba
browseable = no
printable = yes
[samba] //自己创建的共享,共享名
comment=share
path=/etc //共享目录是 /etc
writeable=yes //是否可写入
browseable=yes //网上邻居是否可见
guest ok=yes //是否允许所有人访问
valid users=test //允许访问该共享的用户是test用户
write list=test //只有test用户可以写入
查看我们的配置: grep -v "#" /etc/samba/smb.conf | grep -v ";" | egrep "=|]" 使用 testparm 命令可以测试smb.conf配置是否正确
4:创建samba用户:
useradd -M -s /sbin/nologin test
smbpasswd -a test 给smaba用户test设置密码
5:然后启动服务: systemctl start smb
客户端
windows端访问: \\192.168.10.10\共享名 如:\\192.168.10.10\samba
Linux端访问:
- smbclient -U 用户名 //ip地址/共享名 如: smbclient -U test //192.168.10.10/samba
- smbclient -L 192.168.10.10 然后提示输入密码 (以当前用户身份登录)
- mount -o username=xx //ip地址/共享名 挂载点 将共享文件挂载到本地
相关文章: Linux文件共享服务之NFS
Linux文件共享服务之Samba的更多相关文章
- Linux文件共享服务之Vsftp
目录 FTP Vsftp服务的搭建 ftp.sftp.vsftp.vsftpd的区别 FTP FTP的工作原理: FTP会话时包含了两个通道,一个叫控制通道,一个叫数据通道.控制通道是和FTP服务器进 ...
- Linux文件共享服务之NFS
NFS(Network File System) 网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源.在NFS的应用中,本地NFS的客户端应用可 ...
- CentOS6.5下搭建文件共享服务(Samba)
Samba服务: 本内容为samba服务学习者提供参考 案例描述: 某公司的管理员需要搭建SAMBA服务器,IP地址及允许的访问网段自定义.SAMBA服务器的安全级别为user级,所在工作组为WORK ...
- linux文件共享服务
linux文件共享配置 Windows访问linux 以下操作都在关闭防火墙和关闭selinux的环境下. 关闭防火墙的命令:service iptables stop关闭SELINUX命令:sete ...
- 文件共享服务之Samba
一.Samba服务概述 在Windows网络环境中.机之间进行文件打印和共享是通过微软自己的SMB/CIFS协议来实现的.SMB(服务消息块)和CIFS(通用互联网文件系统)这两个都是微软的私有协议 ...
- Linux 学习笔记_12_Windows与Linux文件共享服务_1.1_--Samba(上)
Samba简介:在UNIX系统中,Samba是通过服务器消息块协议(SMB)在网络上的计算机之间,共享文件和打印服务的软件包. SMB简介:Server Message Block,SMB协议是一种服 ...
- Linux文件共享服务 FTP,NFS 和 Samba
Linux 系统中,存储设主要有下面几种: DAS DAS 指 Direct Attached Storage,即直连附加存储,这种设备直接连接到计算机主板总线上,计算机将其识别为一个块设备,例如常见 ...
- Linux 学习笔记_12_Windows与Linux文件共享服务_1.1_--Samba(下)Samba经典应用案例
五.[Samba应用案例二] 设置Samba共享目录/software,允许用户jack和mary可以通过Windows客户端访问,并具有读写权限. 1.创建目录/software,添加用户jack, ...
- Linux基础学习-Samba文件共享服务
使用Samba文件共享服务 Samba起源: 早期网络想要在不同主机之间共享文件大多要用FTP协议来传输,但FTP协议仅能做到传输文件却不能直接修改对方主机的资料数据,这样确实不太方便,于是便出现了N ...
随机推荐
- 爬虫入门到放弃系列05:从程序模块设计到代理IP池
前言 上篇文章吧啦吧啦讲了一些有的没的,现在还是回到主题写点技术相关的.本篇文章作为基础爬虫知识的最后一篇,将以爬虫程序的模块设计来完结. 在我漫(liang)长(nian)的爬虫开发生涯中,我通常将 ...
- PHP配置 2. 日志相关配置
例如,在disable_functions,定义禁用phpinfo函数, # vim /usr/local/php/etc/php.ini disable_functions=phpinfo,eval ...
- Java传参:值传递 or 引用传递 ?
刚开始学Java的时候一度以为:基本数据类型是值传递,引用类型是引用传递.新人很容易在这两个概念上面被搞糊涂,后来看了Hollis的文章才明白了Java中只有值传递. 接下来我能用简单明了的方式来说明 ...
- 2018.12-2019.1 TO-DO LIST
AC自动机 P3808 [模板]AC自动机(简单版)(完成时间:2018.12.06) P3796 [模板]AC自动机(加强版)(完成时间:2018.12.06) P2444 [POI2000]病毒( ...
- apk动态调试
android.os.Debug类提供了isDebuggerConnected()用于检测是否有调试器链接: AndroidManifest的application节点中加入android:debug ...
- 2019 GDUT Rating Contest II : Problem G. Snow Boots
题面: G. Snow Boots Input file: standard input Output file: standard output Time limit: 1 second Memory ...
- SpringSecurity实战记录(一)开胃菜:基于内存的表单登录小Demo搭建
Ps:本次搭建基于Maven管理工具的版本,Gradle版本可以通过gradle init --type pom命令在pom.xml路径下转化为Gradle版本(如下图) (1)构建工具IDEA In ...
- JWT加密解密方法
public static string Key { get; set; } = "123456789987654321";//解密串 /// <summary> // ...
- C# yield return 原理探究
天需要些一个小工具,需要使用到多线程读写程序集,接口方法返回值类型需要为"IEnumerable<string>"这里用到了"yield return&quo ...
- 国产mcu理论数据评估工作记录
目录 前言 简要工作记录 前言 时间:20210315 主要记录这两天对国内各IC厂商的 MCU 了解记录. 大环境,ST 厂商 MCU 疯狂涨价,国内 MCU 也越来越完善,还便宜.同时,全球缺晶圆 ...