RCurl gali siųsti FTP per HTTP tunelį
Naudokite httpproxytunnel, kai tarpinis serveris turi perduoti FTP protokolą, o ne gauti HTTP GET su FTP URL.
libcurl turi du skirtingus būdus naudoti HTTP tarpinį serverį FTP URL. Be tunelio jis gali siųsti HTTP GET, kurio tikslas yra FTP URL, ir paprašyti tarpinio serverio veikti kaip FTP vartai.
Kai paslauga vietoj to tikisi HTTP CONNECT tunelio, įjunkite atitinkamą RCurl parinktį:
result <- RCurl::getURL(
"ftp://ftp.example.net/pub/file.txt",
.opts = list(
proxy = "http://proxy.example.net:8080",
httpproxytunnel = TRUE
)
)
Tarpinis serveris turi leisti ryšius su reikiamais FTP serverio prievadais. Paslauga, apribota tik CONNECT 443 prievade, gali atmesti FTP valdymo ryšį net tada, kai įprastas HTTPS naršymas veikia.
FTP taip pat naudoja atskirą duomenų ryšį sąrašui arba perdavimui. Sėkmingas valdymo prisijungimas neįrodo, kad suderintas duomenų tikslas yra leidžiamas per tarpininką.
Šis režimas perduoda FTP protokolą per tunelį; jis neužšifruoja paprasto FTP. Kai reikia konfidencialumo, naudokite failų serverio palaikomą saugų protokolą ir atitinkamą libcurl versiją. RCurl galimi protokolai priklauso nuo naudojamos libcurl bibliotekos.