gvfs-смонтируйте автоматический пароль

Похоже, что ответом было то, что я установил аккаунт своей жены без пароля, поэтому этап входа и экран были пропущены в обход. Теперь мы добавили пароль, иконка маленького зубчатого колеса находится там, и щелчок по ней дает выбор Гнома или Матэ, по желанию.

.
1
31.03.2014, 16:16
2 ответа

Вы можете использовать что-то вроде ожидать, что будет предоставлять учетные данные каждый раз, когда вы хотите подключиться. Это не очень безопасно, но дает вам то, что вы хотите.

#!/usr/local/bin/expect --
set timeout -1
spawn gvfs-mount {args}
expect "User"
send "joe\n"
expect "Password:"
send "xxxxx\n"
expect eof

Источник: gvfs-mount укажите пароль для имени пользователя

1
27.01.2020, 23:28

Я такой же, как и вы, мне нравится монтировать / размонтировать свои файловые системы из командной строки.

По поводу опции stdin

Я не уверен, что это достаточно безопасно. Это хуже, чем элементы .netrc?

Вы должны знать, что во многих системах имена процессов и аргументы командной строки видны всем пользователям. Например, в Linux выполните grep -a. / proc / * / cmdline , чтобы увидеть их все.

Тем не менее, в некоторых оболочках, включая bash, echo является встроенной командой, поэтому процесс не запускается.

Итак, насколько мне известно, он должен быть не хуже, чем .netrc . В любом случае дважды проверьте права доступа к файлам.

SFTP

Вы можете gvfs-mount sftp: // somehost / somepath работать без пароля. (Я только что это успешно проверил.)

Рекомендуемое решение - использовать аутентификацию на основе ключей, а не хранить где-либо пароль.

Например, см. аутентификация - Как я могу настроить SSH-вход без пароля? - Спросите Ubuntu и Самый простой способ скопировать ключи ssh на другую машину? - Спросите Ubuntu (он написан для Ubuntu, но работает так же для других Unix).

Я знаю о ssh-copy-id, но не могу получить доступ к оболочке на большинстве моих sftp-серверов.

ssh-copy-id - это просто удобный ярлык. Вам не нужен доступ к оболочке для установки аутентификации на основе ключей, но вам нужен доступ к вашему домашнему каталогу.

Если вы можете получить доступ к файлам в интерактивном режиме с помощью SFTP, вы, скорее всего, можете настроить ~ / .ssh / и ~ / .ssh / authorized_keys , если администратор тщательно не предотвратил это , но это будет стрелять им в ноги. На самом деле администратор должен поощрять пользователей устанавливать аутентификацию на основе ключей. Проверьте, какая у них политика.

Если вам просто нужно настроить только один ключ, вам просто нужно скопировать файл открытого (не закрытого) ключа, созданный выше (возможно, ~ / .ssh / id_rsa.pub ) в удаленный файл в каталоге .ssh с именем authorized_keys и установите разрешение 600 (чтение-запись для вас, ничего для других).

FTP

Что касается URL-адресов ftp, традиционный ответ - использовать ~ / .netrc , как объяснялось, например, на https://askubuntu.com/a/359802/68124 .

Увы, он очень хорошо работает с огромным количеством ftp-клиентов, старых и новых, включая curlftpfs , но (по крайней мере, в Ubuntu 14.04) gvfsmount игнорирует его.

Возможно, curlftpfs подойдет вашему варианту использования. Основное отличие состоит в том, что вы выбираете точку монтирования вместо того, чтобы вычислять ее gvfs-mount .

curlftpfs ftp://host/ ~/mymountpoint

SFTP, снова

Если вам нравится опция curlftpfs , вы можете рассмотреть возможность использования URL-адресов sftp,

sshfs host:/some/remote/path ~/myothermountpoint

И если вам интересно, нужен ли sshfs доступ к оболочке, Википедия говорит: Клиент взаимодействует с удаленной файловой системой через протокол передачи файлов SSH (SFTP), [2]

Последнее слово: для инструментов, которым требуется явная точка монтирования, подумайте о том, чтобы сначала создать пустой каталог по правильному пути. И если вы пытаетесь несколько раз или измените параметры, не забудьте fusermount -u somepath для размонтирования перед повторной попыткой монтирования.

2
27.01.2020, 23:28

Теги

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