fstab和cifs挂载,是否可以在fstab之外存储身份验证信息?


10

我目前正在使用CIF在/ etc / fstab中挂载一些网络共享(需要身份验证)。它工作得很好,但是我想将身份验证详细信息(用户名/密码)移到fstab之外,并能够对其进行chmod 600(因为如果我要更改其权限,fstab可能会出现问题)。我想知道是否可以做到这一点(许多用户系统,不希望所有用户都可以看到这些权限)。

从:

//server/foo/bar /mnt/bar cifs username=user,password=pass,r 0 0

至:

//server/foo/bar /mnt/bar cifs <link to permissions>,r 0 0

(或与此类似的东西)。谢谢。

Answers:


11

从mount.cifs联机帮助页:

凭证=文件名
    指定包含用户名和/或密码的文件。该文件的格式为:

                         用户名=值
                         密码=值
   与在共享文件(例如/ etc / fstab)中使用纯文本密码相比,这是首选方法。确保正确保护任何凭据文件。


2
请注意模糊的“请确保正确保护任何凭据文件”。通常意味着您应该将文件(作为根文件)保存到/root/,以及chmod 700
Nate Parsons 2012年

我的联系也需要domain=value一部分
vladkras

3
我曾希望情况在七年后会有所不同,但可悲的是,这似乎仍然是“最佳”答案。而且它不是远程安全的。每个sudo有权访问服务器的人都可以阅读.smbcredentials。就我而言,该文件将包含-除非我禁止其他人放弃他们的文件-Windows登录信息。就像我用来访问Evil Corp的所有系统(包括工资,福利等)的相同单点登录凭据一样?似乎充满了危险。这样的事情可能会更安全一些:askubuntu.com/a/1081421
evadeflow,

1
该文件的语法微妙。不要在上面放空线,甚至不要放空# comments
David Tonhofer,

8

使用凭证选项,例如:

http://www.justlinux.com/nhf/Filesystems/Mounting_smbfs_Shares_Permanently.html

来自网站的示例:

cd
echo username=mywindowsusername > .smbpasswd
echo password=mywindowspassword >> .smbpasswd
chmod 600 .smbpasswd

在命令中替换Windows用户名和密码。除root以外,没有其他人能够读取该文件的内容。

创建完成后,您将修改/ etc / fstab文件中的行,如下所示:

//servername/sharename /mountdirectory smbfs credentials=/home/myhomedirectory/.smbpasswd 0 0

/ etc / fstab中的示例:

//server/share/   /mnt/localmountpoint   cifs   credentials=/root/.creda

janneb的文章以及指向手册页的链接显示了凭证文件中需要显示的内容。


2
谢谢,两个答案都很有帮助(我应该已经阅读了手册页)。如果我可以将2个答案标记为正确答案,我会这样做。
TJ L

不用担心...一旦我看到詹妮布的答案,很明显答案就被涵盖了:)
damorg 2011年

6

所以我积累了两个答案

  1. 创建文件,例如/root/.cifs

    username=value
    password=value
    domain=value (optional)
    
  2. 设置权限600(rw-权限)以保护您的凭据

    # chmod 600 /root/.cifs
    
  3. 传递credentials=/root/.cifs给您的命令,而不是username=password=


2
多余的注释:chmod不需要,因为/root希望root的主目录rwx------已经存在。
David Tonhofer,

尝试在Red Hat Linux上挂载Windows共享文件夹时,我仅使用用户名和密码时遇到问题。仅在将域添加到凭据文件后,我才成功。在我看来,在这种情况下,域名信息非常可取。
aldemarcalazans
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.