Az RCurl HTTP-alagúton is tud FTP-t küldeni
Akkor használja a httpproxytunnelt, amikor a proxynak az FTP protokollt kell továbbítania, nem pedig egy FTP URL-t tartalmazó HTTP GET-et fogadnia.
A libcurlnak két különböző módja van arra, hogy HTTP-proxyt használjon egy FTP URL-hez. Alagút nélkül küldhet egy HTTP GET-et, amelynek célja az FTP URL, és megkérheti a proxyt, hogy FTP-átjáróként működjön.
Amikor a szolgáltatás helyette HTTP CONNECT-alagutat vár, kapcsolja be az RCurl megfelelő beállítását:
result <- RCurl::getURL(
"ftp://ftp.example.net/pub/file.txt",
.opts = list(
proxy = "http://proxy.example.net:8080",
httpproxytunnel = TRUE
)
)
A proxynak engedélyeznie kell az FTP-kiszolgáló szükséges portjaira irányuló kapcsolatokat. A 443-as porton csak CONNECT-re korlátozott szolgáltatás elutasíthatja az FTP vezérlőkapcsolatát akkor is, ha a szokásos HTTPS-böngészés működik.
Az FTP külön adatkapcsolatot is használ egy listázáshoz vagy átvitelhez. A sikeres vezérlő bejelentkezés nem bizonyítja, hogy a kialkudott adatcél engedélyezett a közvetítőn keresztül.
Ez a mód alagúton keresztül továbbítja az FTP protokollt; nem teszi titkosítottá a sima FTP-t. Ha bizalmasságra van szükség, használja a fájlkiszolgáló által támogatott biztonságos protokollt és a megfelelő libcurl-buildet. Az RCurl elérhető protokolljai a használt libcurl-könyvtártól függenek.