RHCE试题EX300详解(九)配置多用户 samba 挂载

题目要求:配置多用户 samba 挂载

  • l 在 server0 上通过 samba 共享目录 /devops
  • l 共享名为 devops
  • l 共享目录只能被网段 172.25.0.0/16 内的客户端使用
  • l 共享目录 devops 必须可以被浏览
  • l 用户 kenji 能以读的方式访问此共享,访问密码是 redhat
  • l 用户 chihiro 能以读写的方式访问此共享,访问密码是 redhat
  • l 此共享永久挂载在 desktop0 上的 /mnt/dev 目录,并使用用户 kenji 进行认证,任何用户可临时通过 chihiro 来获得读写权限

知识点小贴士:

CIFS是一种通用网络文件系统,主要用于网络设备之间的文件共享。CIFS可以在linux系统和windows系统之间共享文件,因此这种文件系统主要用于客户端是windows系统。Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议。

Samba是一个能让Linux系统应用Microsoft网络通讯协议的软件,而SMB是Server Message Block的缩写,即为服务器消息块 ,SMB主要是作为Microsoft的网络通讯协议,后来Samba将SMB通信协议应用到了Linux系统上,就形成了现在的Samba软件。后来微软又把 SMB 改名为 CIFS(Common Internet File System),即公共 Internet 文件系统,并且加入了许多新的功能,这样一来,使得Samba具有了更强大的功能。

  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系统共享出来的文件。

解题步骤:

(1)Server0上配置:

<code>[root@server0 ~]# vim /etc/samba/smb.conf/<code>

在末尾添加如下内容:

<code>[devops]
        path = /devops
        hosts allow=172.25.0.  .example.com
        browseable = yes
        valid users = kenji chihiro
        write list = chihiro/<code>
RHCE试题EX300详解(九)配置多用户 samba 挂载

创建devops目录:

<code>[root@server0 ~]# mkdir /devops/<code>

添加kenji、chihiro用户:

<code>[root@server0 ~]# useradd kenji;useradd chihiro/<code>
<code>[root@server0 ~]# chown chihiro /devops/
[root@server0 ~]# ls -ld /devops/
drwxr-xr-x. 2 chihiro root 6 Mar 26 01:31 /devops//<code>

配置权限及相关设置:

<code>[root@server0 ~]# semanage fcontext -a -t samba_share_t '/devops(/.*)?'
[root@server0 ~]# restorecon -Rv /devops/
restorecon reset /devops context unconfined_u:object_r:default_t:s0->unconfined_u:object_r:samba_share_t:s0/<code>

配置smb用户密码:

<code>[root@server0 ~]# smbpasswd -a kenji
New SMB password:redhat
Retype new SMB password: redhat
Added user kenji.
[root@server0 ~]# smbpasswd -a chihiro
New SMB password: redhat
Retype new SMB password: redhat
Added user chihiro./<code>
<code>[root@server0 ~]# pdbedit -L
floyd:1001:
chihiro:1003:
kenji:1002:/<code>

(2)Desktop0上配置:

在desktop0 上安装服务包:

<code>[root@desktop0 ~]# yum list samba-client cifs-utils
Loaded plugins: langpacks
Installed Packages
samba-client.x86_64 4.1.1-31.el7 @classroom.example.com_content_rhel7.0_x86_64_dvd
Available Packages

cifs-utils.x86_64   6.2-6.el7    classroom.example.com_content_rhel7.0_x86_64_dvd
[root@desktop0 ~]# yum -y install samba-client cifs-utils.x86_64
Loaded plugins: langpacks
classroom.example.com_content_rhel7.0_x86_ | 4.1 kB     00:00    
Package samba-client-4.1.1-31.el7.x86_64 already installed and latest version
Resolving Dependencies
--> Running transaction check
---> Package cifs-utils.x86_64 0:6.2-6.el7 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
==================================================================
 Package    Arch   Version   Repository                      Size
==================================================================
Installing:
 cifs-utils x86_64 6.2-6.el7 classroom.example.com_content_rhel7.0_x86_64_dvd
                                                             83 k
Transaction Summary
==================================================================
Install  1 Package
Total download size: 83 k
Installed size: 174 k
Downloading packages:
cifs-utils-6.2-6.el7.x86_64.rpm              |  83 kB   00:00    
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : cifs-utils-6.2-6.el7.x86_64                    1/1
  Verifying  : cifs-utils-6.2-6.el7.x86_64                    1/1
Installed:
  cifs-utils.x86_64 0:6.2-6.el7                                  
Complete!/<code>

配置smb相关服务:

<code>[root@desktop0 ~]# smbclient -L //server0 -U kenji%flectrag
session setup failed: NT_STATUS_LOGON_FAILURE
[root@desktop0 ~]# smbclient -L //server0 -U kenji%redhat
Domain=[STAFF] OS=[Unix] Server=[Samba 4.1.1]
    Sharename       Type      Comment
    ---------       ----      -------
    devops          Disk     
   common          Disk      share to floyd
    IPC$            IPC       IPC Service (Samba Server Version 4.1.1)
   kenji           Disk      Home Directories
Domain=[STAFF] OS=[Unix] Server=[Samba 4.1.1]
    Server               Comment
    ---------            -------
    SERVER0              Samba Server Version 4.1.1
    Workgroup            Master

    ---------            -------
    STAFF                SERVER0
[root@desktop0 ~]# smbclient //server0/devops -U chihiro%redhat -c 'put anaconda-ks.cfg'
Domain=[STAFF] OS=[Unix] Server=[Samba 4.1.1]
putting file anaconda-ks.cfg as \\anaconda-ks.cfg (561.1 kb/s) (average 561.1 kb/s)
[root@desktop0 ~]# mkdir /mnt/dev
[root@desktop0 ~]# man mount.cifs/<code>
<code>[root@desktop0 ~]# vim /etc/fstab/<code>
<code>增加如下内容:
//server0.example.com/devops  /mnt/dev  cifs multiuser,sec=ntlmssp,credentials=/root/kenji.cred  0 0/<code>
RHCE试题EX300详解(九)配置多用户 samba 挂载

<code>[root@desktop0 ~]# vim /root/kenji.cred
username=kenji
password=redhat
[root@desktop0 ~]# mount -a
[root@desktop0 ~]# findmnt /mnt/dev
[root@desktop0 ~]# touch /mnt/dev/ro.txt
touch: cannot touch ‘/mnt/dev/ro.txt’: Permission denied
[root@desktop0 ~]# useradd chihiro
useradd: user 'chihiro' already exists
 [root@desktop0 ~]# su - chihiro
Last login: Thu Mar 26 01:56:34 CST 2020 on pts/0/<code>


分享到:


相關文章: