我想挂载受密码保护的SMB共享(由Windows计算机提供)。共享受用户名和密码保护,我可能没有在文件中写入密码,我想在安装时提示输入密码。
我需要一种即使在客户端计算机上的用户没有任何管理特权时也能使用的解决方案,因此,用于挂载共享的任何方法都不得允许他获得root权限。初始安装可以root用户身份进行。用户必须能够指定任意服务器名称。我的迫切需求是使用Ubuntu 12.04,但适用范围更广的解决方案更好。
客户端没有头,所以我正在寻找命令行工具。
我试过的
mount.cifs
:尽管可以将其设置为setuid root,但其作者并不认为它是安全的。在其下运行sudo
具有相同的问题。smbnetfs
,fusesmb
:我无法说服他们两个都提示我输入密码。- Nautilus和gvfs:
gvfs-mount smb://servername/sharename
失败Error mounting location: volume doesn't implement mount
。
如何以非root用户身份从命令行通过密码提示挂接Samba共享?
1
首席开发人员之一似乎已经放松了对setuid问题的立场。摘录:“该代码已经过大量修改,应该比以前安全得多。它现在进行特权分离,这样,大部分挂载过程将以非特权用户的身份执行,并且如果链接到正确的库,则会修剪功能。至此,我要说的足够安全了,我们不再需要限制它被安装为setuid root。来源:lists.samba.org/archive/samba/2010-April/154935.html想通了,我应该指出这一点。
—
蒂姆(Tim)