FTP через HTTP-проксі має два різні режими
Відрізніть HTTP-шлюз, що отримує FTP-адресу, від curl, що говорить FTP через тунелі CONNECT.
FTP-адреса за HTTP-проксі може використовувати одну з двох схем:
| Режим | Що надсилає curl |
|---|---|
| HTTP-шлюз FTP | HTTP-запит, яким проксі просять отримати FTP-ресурс. |
| Тунель CONNECT | Запит тунелю, за яким через прийняте з'єднання йдуть байти власного протоколу FTP. |
Ця команда використовує схему зі шлюзом:
curl --proxy http://203.0.113.10:8080 \
ftp://files.example.com/report.txtЗамініть документаційну кінцеву точку та місце призначення файлу. Як пояснює документація curl щодо HTTP-проксі , у цьому режимі curl спілкується з проксі через HTTP. Успішне отримання файлу не підтверджує кожну операцію, властиву FTP.
Додайте --proxytunnel , коли служба призначена для передавання власного FTP через CONNECT. Вона має дозволяти потрібні з'єднання з ціллю. У FTP є окремі з'єднання керування та даних, тому пасивні адреси/порти, правила CONNECT і конфігурація сервера можуть зламати передавання після успішного входу.
Збережіть етап, на якому стався збій: відмова CONNECT, збій входу до FTP або збій пасивних даних. Шлюзи, специфічні для служби, які кодують іншу ціль у USER/PASS, використовують власні правила входу; це не звичайні облікові дані HTTP-проксі й не узгодження SOCKS.
Використовуйте задокументований режим проксі та налаштування безпеки файлової служби. Один лише тунель не шифрує відкриті облікові дані FTP або дані файлів.