Автоматически монтировать cifs без пароля в виде читаемого текста? [dубликат]

Я знаю, что команда по умолчанию будет выглядеть так:

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, но кажется, что это просто невозможно :()

3
задан 26 January 2016 в 21:15

2 ответа

Вместо этого используйте команду mount.cifs, так как она позволяет указать файл учетных данных или подсказки для пароля, если они не указаны.

Установка

Прежде всего, убедитесь, что у вас есть необходимые пакеты, установленные с помощью следующей команды:

sudo apt-get install cifs-utils

Установка

Согласно руководству http://manpages.ubuntu.com/manpages /raring/man8/mount.cifs.8.html:

OPTIONS [...] credentials = filename указывает файл, который содержит имя пользователя и / или пароль, и, при желании, имя рабочей группы. Формат файла: username = value password = value domain = value

Использование:

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-пользователя как своего владельца с sudo chown root <file>, установив права только на владельца с помощью `sudo chmod 600

МЕТОД 2 - PASSWORD PROMPT

Если указано, вы не хотите, чтобы ваш пароль был видимым вообще, тогда просто не указывайте опцию «пароль» в ваш mount.cifs.

Из man-страницы в http://manpages.ubuntu.com/manpages/raring/man8/mount.cifs.8.html

]

OPTIONS [...] credentials = filename указывает файл, который содержит имя пользователя и / или пароль, и, при желании, имя t он рабочая группа. Формат файла:

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.

password = arg

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

Соответственно, следующая команда должна запрашивать пароль:

Протестировано и работает как ожидалось:

3
ответ дан 17 July 2018 в 22:36

Вместо этого используйте команду mount.cifs, так как она позволяет указать файл учетных данных или подсказки для пароля, если они не указаны.

Установка

Прежде всего, убедитесь, что у вас есть необходимые пакеты, установленные с помощью следующей команды:

sudo apt-get install cifs-utils

Установка

Согласно руководству http://manpages.ubuntu.com/manpages /raring/man8/mount.cifs.8.html:

OPTIONS [...] credentials = filename указывает файл, который содержит имя пользователя и / или пароль, и, при желании, имя рабочей группы. Формат файла: username = value password = value domain = value

Использование:

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-пользователя как своего владельца с sudo chown root <file>, установив права только на владельца с помощью `sudo chmod 600

МЕТОД 2 - PASSWORD PROMPT

Если указано, вы не хотите, чтобы ваш пароль был видимым вообще, тогда просто не указывайте опцию «пароль» в ваш mount.cifs.

Из man-страницы в http://manpages.ubuntu.com/manpages/raring/man8/mount.cifs.8.html

]

OPTIONS [...] credentials = filename указывает файл, который содержит имя пользователя и / или пароль, и, при желании, имя t он рабочая группа. Формат файла:

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.

password = arg

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

Соответственно, следующая команда должна запрашивать пароль:

Протестировано и работает как ожидалось:

3
ответ дан 24 July 2018 в 13:13

Другие вопросы по тегам:

Похожие вопросы: