libcurl دو روش متفاوت برای استفاده از پروکسی HTTP برای یک نشانی FTP دارد. بدون تونل، می‌تواند یک HTTP GET بفرستد که مقصدش نشانی FTP است و از پروکسی می‌خواهد به‌عنوان دروازه FTP عمل کند.

وقتی سرویس در عوض تونل HTTP CONNECT را انتظار دارد، گزینه مربوطه RCurl را فعال کنید:

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

پروکسی باید اتصال به درگاه‌های لازم سرور FTP را مجاز کند. سرویسی که به CONNECT روی 443 محدود است می‌تواند اتصال کنترل FTP را رد کند، حتی وقتی مرور معمولی HTTPS کار می‌کند.

FTP همچنین برای فهرست یا انتقال از یک اتصال داده جداگانه استفاده می‌کند. ورود موفق در کنترل ثابت نمی‌کند که مقصد داده توافق‌شده از طریق واسطه مجاز است.

این حالت پروتکل FTP را از طریق تونل حمل می‌کند؛ FTP ساده را رمزنگاری نمی‌کند. وقتی محرمانگی لازم است، از پروتکل امن پشتیبانی‌شده توسط سرور فایل و ساخت libcurl متناسب استفاده کنید. پروتکل‌های در دسترس RCurl به کتابخانه libcurl که استفاده می‌کند بستگی دارد.

مقالات مرتبط