我用 Linux程序员

关于Linux上SAMBA服务的权限问题(多用户挂载)

2017-11-14  本文已影响648人  Kangvcar

简介:本文探讨关于Samba服务在客户端进行多用户挂载的问题,以及对cifscreds命令的使用效果.

安装配置:

(服务器配置要求如下,配置过程在本博客中<关于Linux上SAMBA服务的权限问题(普通挂载)>,本文省略配置过程)

要求

在客户端desktop0配置进行多用户挂载:

1.安装cifs-utils软件包以支持samba的挂载(否则即使挂载没有报错也无法正常使用)

[root@desktop0 ~]# yum -y install cifs-utils

2.创建挂载点

[root@desktop0 ~]# mkdir /mnt/multiuser

3.把挂载条目写入/etc/fstab以使开机自动挂载

[root@desktop0 ~]# vim /etc/fstab
//server0/common    /mnt/multiuser    cifs    credentials=/root/smb.cred,multiuser,sec=ntlmssp,_netdev,defaults    0 0

注解:

4.创建并编写/etc/smb.cred文件,出于安全性考虑应该修改此文件的权限为600

[root@desktop0 ~]# vim /root/smb.cred
username=rob
password=redhat
[root@desktop0 ~]# chmod 600 /root/smb.cred

5.执行挂载操作

[root@desktop0 ~]# mount -a
[root@desktop0 ~]# mount | grep /mnt/multiuser
//server0/common on /mnt/multiuser type cifs (rw,relatime,vers=1.0,sec=ntlmssp,cache=strict,multiuser,domain=SERVER0,uid=0,noforceuid,gid=0,noforcegid,addr=172.25.0.11,unix,posixpaths,serverino,acl,noperm,rsize=1048576,wsize=65536,actimeo=1)

6.进入挂载点进行权限测试

[root@desktop0 ~]# cd /mnt/multiuser/
[root@desktop0 multiuser]# touch 11
touch: cannot touch ‘11’: Permission denied

结论是:

7.在root用户下使用cifscreds命令把指定用户的用户名和密码加入内核密钥环

[root@desktop0 ~]# cifscreds add server0 -u brian
Password:redhat
[root@desktop0 ~]# cd /mnt/multiuser/
[root@desktop0 multiuser]# touch 22
touch: cannot touch ‘22’: Permission denied

结论是:

8.在其他用户下使用cifscreds命令把指定用户的用户名和密码加入内核密钥环

[root@desktop0 ~]# su - user1
[user1@desktop0 ~]$ cifscreds add server0 -u brian
Password:
[user1@desktop0 ~]$ cd /mnt/multiuser/
[user1@desktop0 multiuser]$ touch 33
#####在user1用户下把brian用户的用户名和密码加入内核密钥环后成功获得写入权限#####成功
[user1@desktop0 multiuser]$ cd
[user1@desktop0 ~]$ cifscreds clearall
[user1@desktop0 ~]$ cifscreds add server0 -u rob
Password:
[user1@desktop0 ~]$ cd /mnt/multiuser/
[user1@desktop0 multiuser]$ touch 44
#####在user1用户下把rob用户的用户名和密码加入内核密钥环后效果并没有改变,还是有写入权限,正常应该只有读权限#####失败,没有生效

结论是:

上一篇下一篇

猜你喜欢

热点阅读