samba

1.samba简介

Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。
samba和nfs类似,也是在网络中实现文件共享的一种服务,但是nfs不支持Windows平台,而samb能够在任何支持SMB协议的主机之间共享文件的一种实现,当然也包括Windows。

2.samba监听的端口

  • TCP:139,445
  • UDP:137,138

3.samb用户

  • 账号:系统用户/etc/passwd

  • 密码:Samba服务自有密码文件通过smbpasswd -a USERNAME命令设置

      - //smbpasswd命令:
      -a Sys_User     //添加系统用户为samba用户并为其设置密码
      -d              //禁用用户帐号
      -e              //启用用户帐号
      -x              //删除用户帐号
    
      [root@xaii-server ~]# yum -y install samba-*
      [root@xaii-server ~]# useradd bebejo
      [root@xaii-server ~]# sambapasswd -a bebejo
      [root@xaii-server ~]# smbpasswd -a bebejo
      New SMB password:
      Retype new SMB password:
      Added user bebejo.
    

samba安全级别

  • user: 基于本地的验证
  • server: 由另一台指定的服务器对用户身份进行认证
  • domain: 由域控进行身份验证

samba配置文件

/etc/samba/smb.conf(主配置文件)

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

实例

配置用户认证共享:

//使用yum命令安装samba服务器:
[root@xaii-server ~]# yum -y install samba-*

//映射共享目录:
//创建用户bebejo:
[root@xaii-server ~]# useradd -M bebejo

//为bebejo用户创建smb共享密码:
[root@xaii-server ~]# smbpasswd -a bebejo
New SMB password:
Retype new SMB password:
Added user bebejo.

//假设这里映射bebejo用户为nmsl用户,那么就要在/etc/samba/smbusers文件中添加如下内容:
[root@xaii-server ~]# cat /etc/samba/smbusers
bebejo = nmsl

//在全局配置中添加如下内容:

[global]
    workgroup = SAMBA
    security = user
	username map = /etc/samba/smbusers    //添加此行内容

//创建一个共享目录bebejo
[root@xaii-server ~]# mkdir /opt/bebejo
[root@xaii-server ~]# chown -R bebejo.bebejo /opt/bebejo
[root@xaii-server ~]#chmod 777 /opt/bebejo
[root@xaii-server ~]# cd /opt
[root@xaii-server opt]# ll
drwxrwxrwx. 2 bebejo bebejo  6 1月  15 07:13 bebejo


//配置共享
[root@xaii-server opt]# vim /etc/samba/smb.conf
  [bebejo]
         comment = bebejo
          path = /opt/bebejo
          browsable = yes
          guest ok = yes
          writable = yes
          write list = nmsl
          public = yes

//启动、重启、重新加载、开机自动启动
[root@xaii-server ~]# systemctl start smb
[root@xaii-server ~]# systemctl restart smb
[root@xaii-server ~]# systemctl reload smb
[root@xaii-server ~]# systemctl enable smb


//在客户机查看samba服务器有哪些共享资源
[root@xaii-client ~]# smbclient -L 192.168.157.33 -U nmsl
Enter SAMBA\nmsl's password: 
Domain=[XAII-SERVER] OS=[Windows 6.1] Server=[Samba 4.6.2]

Sharename       Type      Comment
---------       ----      -------
print$          Disk      Printer Drivers
bebejo          Disk      bebejo
IPC$            IPC       IPC Service (Samba 4.6.2)
Domain=[XAII-SERVER] OS=[Windows 6.1] Server=[Samba 4.6.2]

Server               Comment
---------            -------

Workgroup            Master
---------            -------
SAMBA                XAII33

//将samba服务器的共享资源wangqing挂载到客户机本地
[root@xaii-client ~]# mount -t cifs //192.168.157.33/bebejo /opt/smb -o username=nmsl,password=cheers

[root@xaii-client ~]# df -h
文件系统                 容量  已用  可用 已用% 挂载点
/dev/mapper/rhel-root     17G  1.1G   16G    7% /
devtmpfs                 901M     0  901M    0% /dev
tmpfs                    912M     0  912M    0% /dev/shm
tmpfs                    912M  8.5M  904M    1% /run
tmpfs                    912M     0  912M    0% /sys/fs/cgroup
/dev/sda1               1014M  143M  872M   15% /boot
tmpfs                    183M     0  183M    0% /run/user/0
/dev/loop0               3.8G  3.8G     0  100% /mnt
//192.168.157.33/bebejo   17G  1.4G   16G    8% /opt/smb

//在客户机上进入共享目录创建新文件
[root@xaii-client smb]# touch bebejo
[root@xaii-client smb]# ll
-rw-r--r-- 1 runtime01 runtime01 0 1月  15 18:23 bebejo

//在windows上验证:
在这里插入图片描述

//在服务端验证
[root@xaii-server opt]# cd bebejo/
[root@xaii-server bebejo]# ll
-rw-r--r--. 1 bebejo bebejo 0 1月  15 07:23 bebejo
drwxr-xr-x. 2 xaii   xaii   6 1月  15 07:45 我来了

配置匿名共享:

//创建smb用户
[root@xaii-server ~]# useradd -M messi
[root@xaii-server ~]# smbpasswd -a messi
New SMB password:
Retype new SMB password:
Added user messi.

//在全局配置中添加如下内容:
[global]
    workgroup = SAMBA
    security = user
    map to guest = Bad User      //添加此行内容

//创建共享目录messi
[root@xaii-server ~]# mkdir /opt/messi
[root@xaii-server ~]# chmod 777 /opt/messi
[root@xaii-server ~]# ll /opt
drwxrwxrwx. 2 root   root    6 1月  15 07:27 messi

//配置共享
[root@xaii-server ~]# vim /etc/samba/smb.conf
[messi]
 		  comment = messi
          path = /opt/messi
          browsable = yes
          guest ok = yes
          writable = yes
          public = yes

//启动smb服务:
[root@xaii-server ~]# systemctl start smb

//在客户机查看samba服务器有哪些共享资源
[root@xaii-client ~]# smbclient -L 192.168.157.33 -U 'Bad User'
Enter SAMBA\Bad User's password: 
OS=[Windows 6.1] Server=[Samba 4.6.2]

Sharename       Type      Comment
---------       ----      -------
print$          Disk      Printer Drivers
bebejo          Disk      bebejo
IPC$            IPC       IPC Service (Samba 4.6.2)
messi           Disk      messi
OS=[Windows 6.1] Server=[Samba 4.6.2]

Server               Comment
---------            -------

Workgroup            Master
---------            -------
SAMBA                XAII33


//将samba服务器的共享资源wangqing挂载到客户机本地
[root@xaii-client ~]# mount -t cifs //192.168.157.33/messi /opt/samba -o username='Bad User'
[root@xaii-client ~]# df -Th
文件系统               类型      容量  已用  可用 已用% 挂载点
/dev/mapper/rhel-root  xfs        17G  1.1G   16G    7% /
devtmpfs               devtmpfs  901M     0  901M    0% /dev
tmpfs                  tmpfs     912M     0  912M    0% /dev/shm
tmpfs                  tmpfs     912M  8.5M  904M    1% /run
tmpfs                  tmpfs     912M     0  912M    0% /sys/fs/cgroup
/dev/sda1              xfs      1014M  143M  872M   15% /boot
tmpfs                  tmpfs     183M     0  183M    0% /run/user/0
/dev/loop0             iso9660   3.8G  3.8G     0  100% /mnt
//192.168.157.33/messi cifs       17G  1.4G   16G    8% /opt/samba


//在客户机上进入共享目录创建新文件
[root@xaii-client ~]# cd /opt/samba/
[root@xaii-client samba]# ls
[root@xaii-client samba]# touch wolaile
[root@xaii-client samba]# ll
-rw-r--r-- 1 nobody nobody 0 1月  15 18:38 wolaile

//在windows上验证
在这里插入图片描述

//在服务端验证
[root@xaii-server ~]# cd /opt/messi/
[root@xaii-server messi]# ll
-rw-r--r--. 1 nobody nobody 0 1月  15 07:38 wolaile
drwxr-xr-x. 2 xaii   xaii   6 1月  15 07:43 我又来了

RHCE题库Samba服务:

在这里插入图片描述

//修改工作组
[root@xaii-server ~]# cat /etc/samba/smb.conf|grep workgroup
workgroup = STAFF

//创建共享目录
[root@xaii-server ~]# mkdir /common
[root@xaii-server ~]# tail -4 /etc/samba/smb.conf
[common]
			path = /common
			browsable = yes

//添加natasha用户
[root@xaii-server ~]# useradd -M natasha
[root@xaii-server ~]# smbpasswd -a natasha
New SMB password:
Retype new SMB password:
Added user natasha.


//给natasha用户设置acl
[root@xaii-server ~]# setfacl -m u:natasha:r-x /common


//设置防火墙
[root@xaii-server ~]# firewall-cmd --add-rich-rule 'rule family=ipv4 source address=192.168.157.0/24 service name=samba accept' --permanent
success
[root@xaii-server ~]# firewall-cmd --add-rich-rule 'rule family=ipv4 source address=192.168.157.0/24 service name=samba-client accept' --permanent
success
[root@xaii-server ~]# setsebool -P samba_enable_home_dirs on
[root@xaii-server ~]# chcon -Rt samba_share_t /common

//重载防火墙,重启samba服务
[root@xaii-server /]# firewall-cmd --reload
success
[root@xaii-server /]# systemctl restart smb
[root@xaii-server /]# systemctl reload smb

//在客户端进行挂载
[root@xaii-client ~]# mount -t cifs //192.168.157.33/common /rhce -o username=natasha,password=cheers
[root@xaii-client ~]# df -h
文件系统                 容量  已用  可用 已用% 挂载点
//192.168.157.33/common   17G  1.4G   16G    8% /rhce

在这里插入图片描述

//步骤同十三 题
[root@xaii-server ~]# mkdir /storage
[root@xaii-server ~]# chcon -Rt samba_share_t /storage/
[root@xaii-server ~]# vim /etc/samba/smb.conf
[root@xaii-server ~]# tail -3 /etc/samba/smb.conf
[storage]
			path = /storage
			browsable = yes

//创建用户
[root@xaii-server ~]# useradd -M sarah
[root@xaii-server ~]# useradd -M kitty
[root@xaii-server ~]# smbpasswd -a sarah
New SMB password:
Retype new SMB password:
Added user sarah.
[root@xaii-server ~]# smbpasswd -a kitty
New SMB password:
Retype new SMB password:
Added user kitty.

//设置facl
[root@xaii-server ~]# setfacl -m u:sarah:r-x /storage/
[root@xaii-server ~]# setfacl -m u:kitty:rwx /storage/

//添加有效用户
[root@xaii-server ~]# tail -6 /etc/samba/smb.conf
[share]
		path = /storage
		browsable = yes
		valid users = sarah,kitty
		writable = no
		write list = kitty


//重启服务
[root@xaii-server ~]# systemctl restart smb



//客户端验证
[root@xaii-client ~]# mount -a
[root@xaii-client ~]# cat /etc/fstab 
//192.168.157.33/share /rhce_2 cifs multiuser,username=sarah,password=cheers,sec=ntlmssp 0 0	
[root@xaii-client ~]# df -h
//192.168.157.33/share    17G  1.4G   16G    8% /rhce_2


//需要在客户端切换至一个普通用户来验证
[root@xaii-client ~]# yum -y install cifs-utils*
[root@xaii-client ~]# su - runtime01
上一次登录:六 1月 12 02:44:25 CST 2019pts/0 上
[runtime01@xaii-client ~]$ cifscreds add -u kitty 	192.168.157.33
Password:  //kitty用户的密码
[runtime01@xaii-client ~]$ df -h	//只要没报错就是切换成功


//已经可以进入挂载点创建文件了
[runtime01@xaii-client ~]$ cd /rhce_2
[runtime01@xaii-client rhce_2]$ touch aa
[runtime01@xaii-client rhce_2]$ ll
总用量 0
-rw-r--r-- 1 runtime05 runtime05 0 1月  16 01:40 aa

示例中个别目录名,密码等,因个人习惯未完全按照题目要求,但做法没有问题,请多见谅。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值