Работа с ftp через через кластерный интерфейс с помощью Curl
В наличии два сервера и один кластерный-плавающего адрес на двоих. Нужно получить доступ к файлам удаленного сервера, сетевой доступ к которому есть только для кластерного адреса. В данном случае, обычные ftp клиенты не могут обращаться к удаленному ftp через кластерный адрес, обращение идет через локальный, доступ которому не предоставлен. Для этой цели будем использовать curl.
Есть только возможность записывать файлы и скачивать.
Команда для скачивания
1 2 | curl --disable-eprt -P - --interface 10.20.30.88 --connect-timeout 30 -m 120 \ "ftp://login:password@ftphost/filename" -o /tmp/local_filename |
И для закачивания файлов
1 2 | curl --disable-eprt -P - --interface 10.20.30.88 --connect-timeout 30 -m 120 \ "ftp://login:password@ftphost/" -T /tmp/local_filename |
Т.е. в данном случае мы идем на ftp от имени кластерного адреса 10.20.30.99, устанавливаем дополнительный параметры — таймаут подключения, операции, активный режим.
В первом случае мы скачиваем файл filename в локальную папку /tmp в файл с именем local_filename.
Без указания флага -o мы выведем содержимое в терминал, на экран.