从终端挂载 Samba 网络驱动器,无需硬编码密码

从终端挂载 Samba 网络驱动器,无需硬编码密码

我知道默认命令如下所示:

sudo mount -t cifs -o username=YOUR_USERNAME,password=YOUR_PASSWORD,uid=YOUR_UBUNTU_USERNAME //networkNameOfRemoteComputer/path/to/my/folder /path/to/mounting/dir

但是我想挂载 samba 共享文件夹而不硬编码我的密码。如果密码可见,我认为这会有很大的安全风险。有人有主意吗?

(在此问题的先前版本中,我还要求在没有 sudo 权限的情况下进行挂载,但这似乎是不可能的:()

答案1

使用该mount.cifs命令,因为它允许指定凭证文件,或者在未给出密码时提示输入密码。

安装

首先,通过发出以下命令检查您是否安装了所需的软件包:

sudo apt-get install cifs-utils

方法 1 - 使用凭证文件

根据手册http://manpages.ubuntu.com/manpages/raring/man8/mount.cifs.8.html

OPTIONS
[...]
credentials=filename 指定一个包含用户名和/或密码以及可选的工作组名称的文件。该文件的格式为:

用户名=值
密码=值
域=值

用法:

mount.cifs //<hostname_or_ip>/<cifs_share> <local_mountpoint> -o user=<user_to_connect_as>,rw,credentials=<path_to_the_credentials_file>

例子:

sudo mount.cifs //domain.com/share /mnt/domain_com -o user=admin,rw,credentials=/root/.credentials

值得注意的是,“name_of_the_user_to_connnect_as”还可以包含域或工作组:

user=workgroup/user
user=domain/user

(根据您的环境,您将需要更多或更少的选项)

就安全性而言,将凭证文件存储在 /root 目录中就足够了,但如果您想将其存储在其他地方,只需

  • 使用以下命令将 root 用户设置为其所有者sudo chown root <file>
  • 使用“sudo chmod 600”设置仅限所有者的权限

方法 2 - 密码提示

如果如上所述,您根本不想让密码被看到,那么就不要在命令中提供“密码”选项mount.cifs

来自手册页http://manpages.ubuntu.com/manpages/hardy/man8/mount.cifs.8.html

密码=arg

      specifies  the  CIFS  password. If this option is not given then the
      environment  variable  PASSWD  is  used.  If  the  password  is  not
      specified directly or indirectly via an argument to mount mount.cifs
      will prompt for a password, unless the guest option is specified.

      Note that a password which contains the delimiter character (i.e.  a
      comma  ’,’)  will  fail  to be parsed correctly on the command line.
      However,  the  same  password  defined  in  the  PASSWD  environment
      variable  or  via  a  credentials file (see below) or entered at the
      password prompt will be read correctly.

因此,以下命令应提示输入密码:

mount.cifs //<hostname_or_ip>/<cifs_share> <local_mountpoint> -o user=<user_to_connect_as>,rw

经过测试并按预期运行:

在此处输入图片描述

相关内容