Автоматический ввод пользователя и пароля для подключения к SFTP-серверу - PullRequest
0 голосов
/ 02 ноября 2019

Запуск Ubuntu 18.04 в Windows 10

Цель - подключение к указанному SFTP-серверу без необходимости вручную вводить пароли.

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

Я попытался выполнить следующее безуспешно.

curl sftp://sftp.host.com:/csv -u user:pwrd - обнаружил, что SFTP не поддерживается с помощью curl

sftp user@sftp.host.com:/csv - Я связан с этим, однако мне приходится каждый раз вводить pwrd вручную.

ssh sftp.host.com:/csv-Не могу получить имя хоста, чтобы узнать и подключиться. Также попробовал user@sftp.host.com: / CSV здесь. Я прочитал о том, как я мог бы использовать ключ shh для аутентификации, чтобы избежать пароля, но если бы мне пришлось предоставить логины для нескольких пользователей (более 100), не потребовалось бы много времени для создания и размещения этих ключей в первомplace.

Для версии sftp я подумал, что, возможно, это можно сделать echo pwd | user@sftp.host.com:/csv, и я мог бы задержать ввод, если использовал команду sleep, поэтому он вводит пароль после. Также попробовал sftp user@sftp.host.com:/csv | { print pwrd}. Однако это не представляется возможным в зависимости от того, как работает командная строка.

Может ли кто-то подтвердить, действительно ли правильный путь - 1024 * и есть хитрость в получении поддержки sftp. Может быть, sftp это путь, и я просто неправильно вводить пароль. Или ssh, что я должен делать, и есть простой способ сгенерировать и разместить несколько ключей (хотя я все еще должен был выполнить первоначальный вход в систему, так что, похоже, это всего лишь шаг после моей проблемы)? Или есть что-то еще, о чем я не знаю?

1 Ответ

0 голосов
/ 05 ноября 2019

создал скрипт с lftp

SFTP_SERVER="sftp.host.com:/csv" SFTP_USER="user" SFTP_PWD="pwd"

lftp sftp://$SFTP_USER:$SFTP_PWD@$SFTP_SERVER

Запуск этого скрипта позволяет мне не вводить парольвручную, но команда *.csv, похоже, не работает в этом, поэтому, если вы захотите get *.csv, вы не сможете загрузить все файлы.

...