Linux基础服务3——samba

文章目录

  • 一、基本了解
    • 1.1 服务安装
    • 1.2 服务进程和端口
    • 1.3 samba用户
    • 1.4 配置文件
      • 1.4.1 主配置文件
      • 1.4.2 配置文件参数
    • 1.5 安全级别
  • 二、访问samba
    • 2.1 参数测试
    • 2.2 交互式访问
    • 2.3 挂载访问
      • 2.3.1 临时挂载
      • 2.3.2 永久挂载
    • 2.4 配置用户认证共享
    • 2.5 匿名共享

一、基本了解

什么是samba?

  1. samba与nfs作用相同,也是网络文件系统,还有一个是ftp。
  2. samba能够在任何支持SMB协议的主机之间共享文件的一种实现,也包括windows,弥补了nfs的弊端。
  3. SMB协议是C/S型协议,一种在局域网上共享文件和打印机的一种通信协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。

1.1 服务安装

1.服务端安装。

yum -y install samba*

2.客户端安装。

 yum -y install samba-client

3.服务端关闭防火墙和selinux,并启动服务。

systemctl  stop firewalld
systemctl  disable firewalld
setenforce 0

systemctl start smb nmb

4.客户都安关闭防火墙和selinux。

systemctl  stop firewalld
systemctl  disable firewalld
setenforce 0

1.2 服务进程和端口

进程 作用 端口
nmbd 提供基于NetBIOS主机名称的解析。 139/tcp,445/tcp
smbd 提供对服务器中文件、打印资源的共享访问。 137/udp,138/udp
winbindd + ldap 对应Windows AD活动目录,现已淘汰使用。

1.3 samba用户

账户 密码
samba服务端系统用户 Samba服务单独设置密码,与系统用户登录密码是单独分开的。
通过smbpasswd -a USERNAME命令设置
smbpasswd命令参数 释义
-a Sys_User 添加系统用户为samba用户并为其设置密码
-d 禁用用户帐号
-e 启用用户帐号
-x 删除用户帐号

1.服务端创建samba账户tom,此时的tom账户就是服务器系统账户。

useradd -r -M -s /sbin/nologin tom

在这里插入图片描述
2.给samba用户设置密码,注意该密码与服务器登录密码不同。
Linux基础服务3——samba_第1张图片
3.登录。

Linux基础服务3——samba_第2张图片
Linux基础服务3——samba_第3张图片

1.4 配置文件

  • 配置文件地址:/etc/samba/smb.conf,为主配置文件。

1.4.1 主配置文件

配置文件三大组成 作用
[global] 全局配置,此处的设置项对整个samba服务器都有效
[homes] 宿主机目录共享设置,此处用来设置Linux用户的默认共享,对应用户的宿主目录。
当用户访问服务器中与自己用户名同名的共享目录时,通过验证后将会自动映射到该用户的宿主目录中
[printers] 打印机共享设置,一般不用。

Linux基础服务3——samba_第4张图片

1.testparm命令检查配置文件是否有语法错误,以及显示最终生效的配置,ok说明没有语法错误。
Linux基础服务3——samba_第5张图片

1.4.2 配置文件参数

参数 释义
workgroup 表示设置工作组名称
server string 表示描述samba服务器
security 表示设置安全级别,其值可为share、user、server、domain
passdb backend 表示设置共享帐户文件的类型,其值可为tdbsam(tdb数据库文件)、ldapsam(LDAP目录认证)、smbpasswd(兼容旧版本samba密码文件)
comment 表示设置对应共享目录的注释,说明信息,即文件共享名
browseable 表示设置共享是否可见
writable 表示设置目录是否可写
path 表示共享目录的路径
guest ok 表示设置是否所有人均可访问共享目录
public 表示设置是否允许匿名用户访问
write list 表示设置允许写的用户和组,组要用@表示,例如 write list = root,@root
valid users 设置可以访问的用户和组,例如 valid users = root,@root
hosts deny 设置拒绝哪台主机访问,例如 hosts deny = 192.168.72.1
hosts allow 设置允许哪台主机访问,例如 hosts allow = 192.168.72.2
printable 表示设置是否为打印机

1.5 安全级别

  • Samba服务器的安全级别有三个,分别是user,server,domain
  • 以前的samba版本支持的安全级别有四个,分别是share,user,server,domain.
  • share是用来设置匿名访问的,但现在的版本已经不支持share了,但是还是可以实现匿名访问的,只是配置方式变了。
安全级别 作用
user 基于本地的验证
server 由另一台指定的服务器对用户身份进行认证
domain 由域控进行身份验证

二、访问samba

2.1 参数测试

1.服务端创建系统用户qingjun,并设置远程访问共享文件夹时的登录密码。

useradd qingjun
smbpasswd -a qingjun

2.测试配置文件参数browseable参数。不添加该参数时,客户端查看时会显示出共享目录。
Linux基础服务3——samba_第6张图片
Linux基础服务3——samba_第7张图片
3.添加该参数时,则不显示共享目录。

Linux基础服务3——samba_第8张图片

2.2 交互式访问

1.客户端查看配置信息,指定服务端系统用户查看。

smbclient -L 192.168.130.160 -U qingjun

Linux基础服务3——samba_第9张图片

2.客户端命令访问。

smbclient //192.168.130.160/qingjun -U qingjun

Linux基础服务3——samba_第10张图片

3.使用?查看操作命令。
Linux基础服务3——samba_第11张图片
4.客户端创建目录111,服务端查看。
Linux基础服务3——samba_第12张图片

2.3 挂载访问

2.3.1 临时挂载

1.将服务端的qingjun用户家目录目录挂载到客户端本地的/opt目录。

mount -t cifs //192.168.130.160/qingjun /opt -o username=qingjun,password=citms

Linux基础服务3——samba_第13张图片
2.客户端/opt目录下创建文件baimu,服务端查看效果。

Linux基础服务3——samba_第14张图片

2.3.2 永久挂载

1.将服务端的qingjun用户家目录挂载到客户端本地的/opt/111目录。

//192.168.130.160/qingjun /opt/111 cifs defaults,username=qingjun,password=citms 0 0

mount -a

Linux基础服务3——samba_第15张图片
Linux基础服务3——samba_第16张图片

2.查看挂载效果。已将服务端的/home/qingjun目录下的内容挂载到客户端的/opt/111目录下。
Linux基础服务3——samba_第17张图片

2.4 配置用户认证共享

  • 使用上面方式存在一定安全问题,用户会知道系统用户,这是非常不安全的,所以这时可以将服务端上的系统用户映射成一个不存在的假用户,客户端使用假用户访问。

1.此时服务端存在系统用户qingjun。
在这里插入图片描述
2.创建/etc/samba/smbusers文件,将左边的系统用户映射成右边不存在的假用户。
Linux基础服务3——samba_第18张图片
3.修改配置文件,指定刚才创建的文件,并配置共享目录。
Linux基础服务3——samba_第19张图片

4.创建共享目录,修改属主属组。
Linux基础服务3——samba_第20张图片
5.重启服务。

 systemctl restart smb nmb

6.客户端使用假用户查看共享资源。

smbclient -L 192.168.130.160 -U 999

Linux基础服务3——samba_第21张图片
7.客户端挂载。

vim /etc/fstab
//192.168.130.160/beijing /opt cifs defaults,username=999,password=citms 0 0

##############################################
mount -a

Linux基础服务3——samba_第22张图片

8.验证效果。此时客户端上显示的文件属主属组为1000普通用户创建,而服务端显示的文件属主属组为qingjun用户。
Linux基础服务3——samba_第23张图片

2.5 匿名共享

  • 以上方式存在密码泄露问题,这种情况下可以使用匿名共享,不输入密码直接挂载访问。

1.创建共享目录/opt/baimu1,修改目录权限为777。
Linux基础服务3——samba_第24张图片
2.修改配置文件,指定使用BadUser用户访问,配置共享策略。
Linux基础服务3——samba_第25张图片
3.重启服务。

systemctl  restart smb nmb

4.在客户机查看共享资源。
Linux基础服务3——samba_第26张图片
5.客户端挂载。

vim /etc/fstab 
//192.168.130.160/wuhan /opt cifs defaults,username=BadUser 0 0

#######################################
mount -a

Linux基础服务3——samba_第27张图片
6.验证效果。
Linux基础服务3——samba_第28张图片
7.windows本地访问。
Linux基础服务3——samba_第29张图片

你可能感兴趣的:(Linux基础服务篇,linux,服务器,网络,运维)