libcurl are două moduri diferite de a folosi un proxy HTTP pentru un URL FTP. Fără tunel, poate trimite un HTTP GET a cărui țintă este URL-ul FTP, cerând proxy-ului să acționeze ca poartă FTP.

Când serviciul așteaptă în schimb un tunel HTTP CONNECT, activați opțiunea corespunzătoare a RCurl:

result <- RCurl::getURL(
  "ftp://ftp.example.net/pub/file.txt",
  .opts = list(
    proxy = "http://proxy.example.net:8080",
    httpproxytunnel = TRUE
  )
)

Proxy-ul trebuie să permită conexiuni către porturile necesare ale serverului FTP. Un serviciu limitat la CONNECT pe 443 poate respinge conexiunea de control FTP chiar și atunci când navigarea HTTPS obișnuită funcționează.

FTP folosește de asemenea o conexiune de date separată pentru o listare sau un transfer. O autentificare de control reușită nu dovedește că destinația de date negociată este permisă prin intermediar.

Acest mod transportă protocolul FTP printr-un tunel; nu criptează FTP-ul simplu. Când este necesară confidențialitate, folosiți protocolul sigur acceptat de serverul de fișiere și compilarea libcurl corespunzătoare. Protocoalele disponibile ale RCurl depind de biblioteca libcurl folosită.

Articole similare