Samba安装与配置流程

Samba 服务概述

Samba最先在Linux和Windows两个平台之间架起了一座桥梁,正是由于Samba 的出现,我们可以在Linux 系统和Windows 系统之间互相通信,比如拷贝文件、实现不同操作系统之间的资源共享等等,我们可以将其架设成一个功能非常强大的文件服务器,也可以将其架设成打印服务器提供本地和远程联机打印。

Samba 应用环境

文件和打印机共享∶文件和打印机共享是Samba 的主要功能,SMB进程实现资源共享,将文打印机发布到网络之中,以供用户可以访问。

身份验证和权限设置:smbd服务支持user mode和domain mode等身份验证和权限设置模式,v通过加密方式可以保护共享的文件和打印机.

名称解析:Samba通过nmbd 服务可以搭建NBNS(NetBIOS Name Service)服务器,提供名称解析,将计算机的NetBIOS名解析为IP地址。

浏览服务∶局域网中,Samba 服务器可以成为本地主浏览服务器,保存可用资源列表当使用客户端访问Windows 网上邻居时,会提供浏览列表,显示共享目录、打印机等资源。

端口

查看端口: netstat -tlnp |grep smb

193

445

NetBIOS协议

NetBIOS是Network Basic Input/Output System的简称,网络基本输入/输出系统协议。协议,一般指用于局域网通信的一套API,是由IBM公司开发。主要作用:通过NETBIOS协议获得计算机名称,然后把计算机名解析为对应IP地址。

安装Samba及配置

yum -y install samba

安装完成后会有如下打印

image-20210622143107897

服务启动和关闭

  1. 启动samba服务

    service smb restart
    
  2. 加载smb.conf

    service smb reload
    
  3. 关闭防火墙和SElinux

    service iptables stop
    setenforce 0
    

申请一个新的账号

新建用户: useradd 用户名
设置新用户密码: passwd 用户名
删除用户: userdel -r 用户名
groupadd 命令用于创建一个新的工作组,新工作组的信息将被添加到系统文件中
将用户添加到samba用户数据库:smbpasswd -a 用户名

Samba常规服务器配置

基本的Samba服务器的搭建流程主要分为四个步骤∶

  1. 编辑主配置文件smb.conf,指定需要共享的目录,并为共享目录设置共享权限。
  2. 在smb.conf 文件中指定文件名称和存放路径。
  3. 设置共享目录的本地系统权限及samba共享权限。
  4. 重新加载配置文件或重新启动smb服务,使用配置生效·

配置文件:smb.conf解析

配置文件的路径:

ls /etc/samba/smb.conf

smb.conf配置文件中内容:

  1. smb.conf 文件的开头部分为samba配置简介,告诉我们smb.conf 文件的作用及相关信息。

  2. smb.conf 中还有以";“分号开头,这些都是samba配置的格式范例,默认是不生效,可以通过去掉前面的”;"并加以修改来设置想使用的功能。#号表示为注释。

  3. workgroup = WORKGROUP
    说明:设定 Samba Server 所要加入的工作组或者域。
    
  4. server string = Samba Server Version %v
    说明:设定 Samba Server 的注释,可以是任何字符串,也可以不填。%v表示显示Samba的版本号
    
  5. security = user
    1. share:用户访问Samba Server不需要提供用户名和口令, 安全性能较低。
    2. user:Samba Server共享目录只能被授权的用户访问,由Samba Server负责检查账号和密码的正确性。账号和密码要在本Samba Server中建立。
    
  6. log file = /var/log/samba/log.%m
    设置Samba Server日志文件的存储位置以及日志文件名称。在文件名后加个宏%m(主机名),表示对每台访问Samba Server的机器都单独记录一个日志文件
    
  7. max log size = 50
    说明:设置Samba Server日志文件的最大容量,单位为kB,0代表不限制
    
  8. passdb backend = tdbsam
    说明:passdb backend就是用户后台的意思。目前有三种后台:smbpasswd、tdbsam和ldapsam。sam是security account manager(安全账户管理)的简写。
    1.smbpasswd:该方式是使用smb自己的工具smbpasswd来给系统用户(真实用户或者虚拟用户)设置一个Samba密码,客户端就用这个密码来访问Samba的资源。smbpasswd文件默认在/etc/samba目录下,不过有时候要手工建立该文件。
    2.tdbsam: 该方式则是使用一个数据库文件来建立用户数据库。数据库文件叫passdb.tdb,默认在/etc/samba目录下。passdb.tdb用户数据库 可以使用smbpasswd –a来建立Samba用户,不过要建立的Samba用户必须先是系统用户。我们也可以使用pdbedit命令来建立Samba账户。pdbedit命令的 参数很多,我们列出几个主要的。
      pdbedit –a username:新建Samba账户。
      pdbedit –x username:删除Samba账户。
      pdbedit –L:列出Samba用户列表,读取passdb.tdb数据库文件。
      pdbedit –Lv:列出Samba用户列表的详细信息。
      pdbedit –c “[D]” –u username:暂停该Samba用户的账号。
      pdbedit –c “[]” –u username:恢复该Samba用户的账号。
    
  9. smb passwd file = /etc/samba/smbpasswd
    说明:用来定义samba用户的密码文件。smbpasswd文件如果没有那就要手工新建。
    
  10. map to guest = bad user
    配置的意思是将所有samba系统主机所不能正确识别的用户都映射成guest用户
    
  11. comment = 任意字符串
    说明:comment是对该共享的描述,可以是任意字符串。
    
  12. path = 共享目录路径
    说 明:path用来指定共享目录的路径
    
  13. browseable = yes/no
    说明:browseable用来指定该共享是否可以浏览
    
  14. writable = yes/no
    说明:writable用来指定该共享路径是否可写。
    
  15. available = yes/no
    说明:available用来指定该共享资源是否可用。
    
  16. valid users = 允许访问该共享的用户
    说明:valid users用来指定允许访问该共享资源的用户。
    例如:valid users = test,@dave,@tech(多个用户或者组中间用逗号隔开,如果要加入一个组就用“@组名”表示。)
    
  17. invalid users = 禁止访问该共享的用户
    说明:invalid users用来指定不允许访问该共享资源的用户。
    例如:invalid users = root,@bob(多个用户或者组中间用逗号隔开。)
    
  18. guest ok = yes/no
    说明:意义同“public”。
    
  19. public = yes/no
    说明:public用来指定该共享是否允许guest账户访问。
    
  20. write list = 允许写入该共享的用户
    说明:write list用来指定可以在该共享下写入文件的用户。
    例如:write list = david,@dave
    
  21. hosts deny = 192.168.0.
    说明:禁止192.168.0. 网段访问
    
  22. hosts allow = 192.168.0.
    说明:允许192.168.0.网段访问
    

注意事项

安装Samba可能出现的问题

  1. 因为可能是系统自动升级正在运行,yum在锁定状态中。已经有一个yum进程在运行。

    image-20210622141805070

    解决措施:

    rm -f /var/run/yum.pid
    
  2. 出现这个错误一般是没有正确配置镜像文件,需要配置阿里镜像

    image-20210622141921108

    解决措施:

    备份现有repo仓库
    1 mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
    下载并使用阿里云仓库repo
    2 curl -o /etc/yum.repos.d/CentOS-Base.repo https://www.xmpan.com/Centos-6-Vault-Aliyun.repo
     更新yum
    3 yum clean all
    4 yum makecache
    5 yum -y install samba -y
    
    

Samba服务打开,但是无法连接到服务器:

image-20210624102402707

解决措施:

  1. 打开: 控制面板\程序\程序和功能 -> 启用或关闭Windows功能 -> 勾选SMB 1.0/CIFS 文件共享支持

    image-20210624102727765

  2. 控制面板\网络和 Internet\网络和共享中心\高级共享设置

    image-20210624102940024

  3. 关闭防火墙SElinux

    1 service iptables stop
    2 setenforce 0
    

制面板\程序\程序和功能 -> 启用或关闭Windows功能 -> 勾选SMB 1.0/CIFS 文件共享支持

[外链图片转存中…(img-rgjsZEzL-1625100109439)]

  1. 控制面板\网络和 Internet\网络和共享中心\高级共享设置

    [外链图片转存中…(img-iuogrTH7-1625100109440)]

  2. 关闭防火墙SElinux

    1 service iptables stop
    2 setenforce 0
    
  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值