Centos7下Samba服务器配置
发布时间:2023-06-30, 03:06:35 分类:Linux | 编辑 off 网址 | 辅助
图集1/1
正文 2138字数 43,638阅读
先关闭防火墙和关闭 SELINUX
systemctl disable firewalld
setenforce 0
Run code
Cut to clipboard
安装Samba服务
yum install samba -y
Run code
Cut to clipboard
配置Samba配置文件信息
这里有个坑,set_variable_helper(yes ): value is not boolean!
你要删除掉#后面的注释文件,不然你就会报错,所以注释文字还是删除掉吧,#后面的注释文字
cd /etc/samba/ ##切换到Samba配置文件目录
mv smb.conf smb.conf.bak ##备份
grep -v "#" smb.conf.bak > smb.conf ##重新创建一个配置文件(除去注释的)
vim smb.conf ##修改配置文件
Run code
Cut to clipboard
[global] ##全局
workgroup = SAMBA
security = user
passdb backend = tdbsam
map to guest = Bad User ##开启匿名用户
[tt] ##添加的share文件
path=/home/tt/test ##共享路径
public=yes ##公开访问
browseable=yes ##能够访问
writable=yes ##写权限
~
Run code
Cut to clipboard
这里有个坑,set_variable_helper(yes ): value is not boolean!
你要删除掉#后面的注释文件,不然你就会报错,所以注释文字还是删除掉吧,#后面的注释文字
重启samba服务
systemctl restart smb
Run code
Cut to clipboard
创建tt共享文件夹路径目录,并给权限
[root@localhost tt]# mkdir /home/tt ##创建目录
[root@localhost tt]# chmod 777 /home/tt ##给全部权限
[root@localhost tt]# touch test.txt ## 创建测试文件 并写入内容
[root@localhost tt]# echo "this is a txt" >test.txt
[root@localhost tt]# systemctl restart smb ##开启Samba服务
Run code
Cut to clipboard
测试访问
可以匿名访问,并写入文件

可以匿名访问,并写入文件
Samba共享服务的身份验证
配置Samba配置文件信息
记得把备注去除掉
配置Samba配置文件信息
vi /etc/samba/smb.conf
Run code
Cut to clipboard
[global]
workgroup = SAMBA
security = user
passdb backend = tdbsam
#map to guest = Bad User ##将匿名访问的一项删除,加上#。
[tt]
path=/home/tt/test
public=yes
browseable=yes
writable=yes
valid users=test1,test2 ##允许访问的用户
write list=test1 ##允许写入的用户
Run code
Cut to clipboard
记得把备注去除掉
创建smb用户
[root@localhost tt]# useradd test1 ##创建两个用户
[root@localhost tt]# useradd test2
[root@localhost tt]# smbpasswd -a test1 ##创建smb用户并设置密码
New SMB password: ##设置密码
Retype new SMB password: ##确认密码
Added user test1.
[root@localhost tt]# smbpasswd -a test2
New SMB password:
Retype new SMB password:
Added user test2.
[root@localhost tt]# pdbedit -L ##列出smb用户列表
tt:1000:
test2:1003:
test1:1002:
[root@localhost opt]# systemctl restart smb.service ##重启Samba服务
Run code
Cut to clipboard
(支付宝)给作者钱财以资鼓励 (微信)→
有过 2 条评论 »
一、什么是SMB/CIFS? SMB(Server Message Block,又称Common Internet File System(CIFS))是由微软开发的一种软件程序级的网络传输协议,主要用来使得一个网络上的机器共享计算机文件、打印机、串行端口和通讯等资源。它也提供认证的行程间通讯机能。它主要用在装有Microsoft Windows的机器上,在这样的机器上被称为Microsoft Windows Network。 经过Unix服务器厂商重新开发后,它可以用于连接Unix服务器和Windows客户机,执行打印和文件共享等任务。 CIFS 的消息格式不同与NFS的固定长度格式, 大多数消息体都包含可变长的数据,这带来一定的协议复杂性。CIFS 消息一般在netbios或Tcp协议层上,分别使用不同的端口 139 或445, 目前倾向于使用445端口。CIFS的消息包括一个消息头(32字节)和消息体(1个或多个,可变长)。 二、实现 1、客户端-服务器端结构 SMB使用点对点的通讯方式,一个客户端向一个服务器提出请求,服务器相应地回答。SMB协议中的一部分专门用来处理对文件系统的访问,使得客户端可以访问一个文件服务器。SMB也有行程间通讯的部分。SMB协议尤其适用于局部子网,但是也可以被用来通过万维网来链接不同的子网。Microsoft Windows的文件和打印机分享主要使用这个功能。 SMB服务器向网络上的客户端提供文件系统和其它资源。客户端电脑也可能有其自己的、不共享的硬盘,但是可能也想使用服务器上分享的文件系统和打印机。这是SMB为什么这么出名和广泛地被使用的原因。SMB普及的另一个原因是它使用适合NT网域的协议,至少提供基于NT网域式的认证。NT网域协议是一个微软远程过程调用服务,几乎只能被SMB进程间通讯的命名管道使用。几乎所有SMB服务器的实现使用NT网域来认证用户是否可以访问一个资源。 2、性能问题 一般认为SMB协议会占用很多网络带宽,因为每个客户端均在整个子网内广播其存在。但是SMB本身并不使用广播。SMB造成的广播问题实际上是NetBIOS的服务定位协议造成的。一般来说Microsoft Windows服务器使用NetBIOS来协议和定位服务。而NetBIOS则定时向一个特定的服务器广播一个服务的存在。对于一个少于20个服务器的网络来说这个方式是可行的。但是随服务器数目的增加广播造成的交通会导致问题。通过适当地实现Windows Internet Name Service(WINS)定位协议这个问题可以被缓和。WINS使用更高级的系统来确定和中央化服务需求,但是造成自己的设计和保管网络的问题。动态DNS是另一个解决方法。微软本身推荐在微软的活动目录环境下使用动态DNS。网络延迟对SMB协议的速度有非常大的冲击。在服务器之间网络延迟大的情况下通过SMB来更换档案夹非常明显地反映了这个问题。比如在通过万维网使用虚拟私人网路时网络延迟就会比较大,这时使用SMB就很恼人。 3、特点 3.1 SMB的进程间通信机构值得一提。通过这个系统它提供命名管道。这个机构是最早的、程序员可以使用的少数行程间通讯之一,它继承客户端联系SMB服务器时的认证来提供服务。命名管道继承认证是一个独特和透明的机构,因此使用Windows API的程序员和Windows的用户均将它看作是自然的。 奇怪的是有些服务使用命名管道,比如使用通过SMB的微软远程过程调用的程序,也允许微软远程过程调用客户端程序进行自己的认证,并且由此掩盖SMB服务器的认证。但是这个掩盖只在客户端程序的认证成功的情况下才生效。 3.2 另一个特点是SMB对文件使用一种特殊的、被称为伺机锁定的锁定机构来提高速度。 微软的分布式文件系统实现是基于SMB上的。 三、其它实现和版本 Samba是许多服务以及协议的实现,其包括TCP/IP上的NetBIOS(NBT)、SMB、CIFS(SMB的增强版本)、 DCE/RPC或者更具体来说MSRPC(网络邻居协议套件)、一种 WINS服务器(也被称作NetBIOS Name Server(NBNS))、NT 域协议套件(包括NT Domain Logons、Secure Accounts Manager(SAM)数据库、Local Security Authority(LSA)服务、NT-style打印服务(SPOOLSS)、NTLM以及近来出现的包括一种改进的Kerberos协议与改进的轻型目录访问协议(LDAP)在内的Active Directory Logon服务)。以上这些服务以及协议经常被错误地归类为NetBIOS或者SMB。Samba也能够用于共享打印机。 Samba能够为选定的Unix目录(包括所有子目录)建立网络共享。该功能使得Windows用户可以像访问普通Windows下的文件夹那样来通过网络访问这些Unix目录。 Samba-TNG是一款Samba的衍生版本。