LFTP: сохранить имя пользователя / пароль для конкретного сервера?

Могу ли я сохранить пару имя пользователя / пароль для FTP-сервера в каком-то локальном файле конфигурации, чтобы lftp найдет их автоматически при подключении к этому серверу?

Предыстория: у меня есть скрипт, который будет использоваться несколькими пользователями с разными парами имя пользователя / пароль для синхронизации сгенерированного содержимого из репозитория на ftp-сервер. Было бы неплохо не вводить наши имена пользователей / пароли вручную каждый раз. Поскольку пароли ftp отправляются в виде открытого текста, мы все используем для этого пароли с низким значением, поэтому хранение паролей в открытом тексте в локальном файле конфигурации допустимо.

2 ответа

Решение

Вы можете использовать файл ~/.netrc или закладки lftp.

Добавьте что-то вроде этого в ~/.netrc:

machine your.server.example.com login your_login password your_password

Затем lftp выберет пароль при открытии ftp://your_login@your.server.example.com и будет автоматически использовать your_login при открытии "your.server.example.com" без синтаксиса URL.

При использовании закладок выполните "set bmk: save-passwords true" (по умолчанию false), затем сохраните текущий сеанс в закладки под именем, затем "open bookmark_name" будет использовать пару логин / пароль. Файл закладок представляет собой простой текст, поэтому вы можете даже добавить URL с логином / паролем в любом текстовом редакторе. Чтобы использовать общие закладки для всех пользователей, установите переменную среды LFTP_HOME в общий каталог.

Еще несколько подробностей о закладках lftp:

Сначала добавьте строку set bmk: save-passwords yes в основной файл конфигурации lftp /etc/lftp.conf.

Теперь каждый пользователь может добавить свою собственную закладку:

lftp -c "добавить закладку SiteName ftp://user:password@sitename.com/path"

При использовании lftp в скрипте просто используйте: lftp -c "open SiteName && lcd MyLocalDir && mput./" *

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