Текстовые настройки FTP-клиента за прокси - PullRequest
3 голосов
/ 17 марта 2011

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

Я могу нормально подключиться к FTP, используя клиент GUI, т.е. Filezilla со следующими настройками:

Proxy Settings
--------------
FTP Proxy : USER@HOST
Proxy Host: proxy.domain.com
Proxy User: blank
Proxy Pass: blank

Proxy Settings

FTP Settings
------------
Host : 200.200.200.200
Port : 21
User : foo
Pass : bar

FTP Settings

То, что я не могу сделать, это скопировать эти настройки в текстовом ftp-клиенте, т.е. ftp, lftp и т. Д. Может ли кто-нибудь помочь с настройкой этого скрипта?

Заранее спасибо!

1 Ответ

4 голосов
/ 17 марта 2011

Согласно документам , lftp должен поддерживать переменную окружения ftp_proxy, например,

ftp_proxy=ftp://proxy.domain.com lftp -c "cd /upload; put file" ftp://200.200.200.200

Если это работает, вы можете поставить

export ftp_proxy=ftp://proxy.domain.com

в файлах конфигурации вашей оболочки или

set ftp:proxy=ftp://proxy.domain.com

в вашем ~ / .lftprc.

Либо попробуйте запустить команды, которые запущены на вашем FTP-клиенте с графическим интерфейсом, например,

upload.lftp

USER ...@...
PASS ...
PUT ...

И запустите его, используя -s:

lftp -s upload.lftp 200.200.200.200

Или попробуйте curl -T ( docs ) ncftpput ( документы ).

Что-то вроде:

FTP_PROXY=ftp://proxy.domain.com curl -T uploadfile -u foo:bar ftp://200.200.200.200/myfile

может работать.

...