libcurl memiliki dua cara berbeda untuk memakai proxy HTTP bagi URL FTP. Tanpa terowongan, ia dapat mengirim HTTP GET yang targetnya adalah URL FTP, meminta proxy bertindak sebagai gerbang FTP.

Ketika layanan justru mengharapkan terowongan HTTP CONNECT, aktifkan opsi RCurl yang sesuai:

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

Proxy harus mengizinkan koneksi ke porta yang dibutuhkan server FTP. Layanan yang dibatasi hanya pada CONNECT di 443 dapat menolak koneksi kontrol FTP bahkan ketika penjelajahan HTTPS biasa berfungsi.

FTP juga memakai koneksi data terpisah untuk daftar atau transfer. Login kontrol yang berhasil tidak membuktikan bahwa tujuan data yang dinegosiasikan diizinkan melalui perantara.

Mode ini membawa protokol FTP melalui terowongan; mode ini tidak membuat FTP biasa terenkripsi. Bila kerahasiaan diperlukan, gunakan protokol aman yang didukung server berkas dan build libcurl yang sesuai. Protokol yang tersedia di RCurl bergantung pada pustaka libcurl yang dipakainya.

Artikel terkait