การเข้าสู่ระบบ FTPS พิสูจน์ว่าการเชื่อมต่อควบคุมทำงาน การแสดงรายการโฟลเดอร์ต้องใช้การเชื่อมต่ออีกเส้น ดังนั้นพร็อกซีอาจอนุญาตให้เข้าสู่ระบบแต่บล็อกขั้นตอนถัดไป

สำหรับเซิร์ฟเวอร์ FTPS แบบ explicit ให้กำหนดเส้นทางควบคุมและโหมดพาสซีฟด้วย WinSCP .NET:

var options = new WinSCP.SessionOptions
{
    Protocol = WinSCP.Protocol.Ftp,
    HostName = "ftp.example.net",
    PortNumber = 21,
    UserName = ftpUser,
    Password = ftpPassword,
    FtpSecure = WinSCP.FtpSecure.Explicit,
    FtpMode = WinSCP.FtpMode.Passive
};

options.AddRawSettings("ProxyMethod", "3");
options.AddRawSettings("ProxyHost", "proxy.example.net");
options.AddRawSettings("ProxyPort", "8080");

การตั้งค่า ProxyMethod ที่มีค่า 3 จะเลือก HTTP CONNECT เปิดตัวเลือกเหล่านี้ผ่านวงจรชีวิตของ WinSCP Session ตามปกติในแอปพลิเคชัน และเพิ่มการตั้งค่าดิบ ProxyUsername และ ProxyPassword เมื่อตัวกลางต้องการการรับรองความถูกต้อง

ติดตามความล้มเหลวของการแสดงรายการ

ตรวจสอบบันทึกเซสชันเพื่อหาจุดปลายทางข้อมูลแบบพาสซีฟที่เจรจาแล้วและความล้มเหลวในการเชื่อมต่อ พร็อกซีต้องอนุญาตปลายทางและพอร์ตนั้น รวมถึงจุดปลายทางการควบคุมของ FTP ด้วย ดังนั้นกฎที่อนุญาต CONNECT ไปยังพอร์ตควบคุมเท่านั้นจึงอาจยอมรับการเข้าสู่ระบบและปฏิเสธรายการได้

การเปลี่ยนเฉพาะพอร์ตควบคุมไม่สามารถแก้ไขเส้นทางข้อมูลที่ถูกบล็อกได้ ใช้จุดปลายทางข้อมูลที่บันทึกไว้เมื่อตรวจสอบนโยบายเครือข่าย

ตัวอย่างนี้เริ่ม FTPS แบบ explicit บนพอร์ต 21 และเจรจา TLS สำหรับจุดปลายทาง FTPS แบบ implicit ให้ใช้โหมด FtpSecure ที่สอดคล้องและพอร์ตของเซิร์ฟเวอร์ ในทั้งสองกรณีให้ใช้ชื่อโฮสต์ TLS จริงของเซิร์ฟเวอร์และการกำหนดค่าการตรวจสอบใบรับรอง

บทความที่เกี่ยวข้อง