FTP tra HTTP-prokurilo havas du malsamajn reĝimojn
Distingi HTTP-enirejon, kiu elprenas FTP-URL-on, de curl, kiu parolas FTP tra CONNECT-tuneloj.
FTP-URL malantaŭ HTTP-prokurilo povas uzi unu el ĉi tiuj du aranĝoj:
| Reĝimo | Kion curl sendas |
|---|---|
| HTTP-FTP-enirejo | HTTP-peto, kiu petas la prokurilon elpreni la FTP-risurson. |
| CONNECT-tunelado | Tunela peto, sekvata de bajtoj de la denaska FTP-protokolo tra la akceptita konekto. |
Ĉi tiu komando uzas la enirejan aranĝon:
curl --proxy http://203.0.113.10:8080 \
ftp://files.example.com/report.txtAnstataŭigu la dokumentan finpunkton kaj la dosiercellokon. Kiel la dokumentaro de curl pri HTTP-prokurilo klarigas, en tiu reĝimo curl parolas HTTP kun la prokurilo. Sukcesa elpreno de dosiero ne pruvas ĉiun FTP-specifan operacion.
Aldonu --proxytunnel kiam la servo celas porti denaskan FTP tra CONNECT. Ĝi devas permesi la necesajn celkonektojn. FTP havas apartajn kontrolajn kaj datenajn konektojn, do pasivaj adresoj/pordoj, CONNECT-reguloj kaj servila agordo povas rompi transigon post sukcesa ensaluto.
Konservu la fiaskan stadion: rifuzo de CONNECT, malsukceso de FTP-ensaluto aŭ malsukceso de pasivaj datenoj. Serspecifaj enirejoj, kiuj kodas alian celon en USER/PASS, uzas proprajn ensalutajn konvenciojn; ili estas nek ordinaraj HTTP-prokuraj legitimiloj nek SOCKS-traktado.
Uzu la dokumentitan prokuran reĝimon kaj la sekurecan agordon de la dosier-servo. Tunelo sola ne ĉifras malkaŝajn FTP-legitimilojn nek dosierajn datenojn.