Prijava putem FTPS-a dokazuje da je kontrolna veza radila. Lista direktorija zahtijeva drugu vezu, pa proxy može dopustiti prijavu i blokirati sljedeći korak.

Za eksplicitni FTPS poslužitelj postavite kontrolnu rutu i pasivni način rada pomoću 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");

Postavka ProxyMethod s vrijednošću 3 odabire HTTP CONNECT. Otvorite ove opcije kroz uobičajeni životni ciklus WinSCP Session u aplikaciji i dodajte sirove postavke ProxyUsername i ProxyPassword kada posrednik zahtijeva autentifikaciju.

Pratite neuspjeh popisa

Pregledajte dnevnik sesije za dogovorenu pasivnu završnu točku podataka i njezin neuspjeh povezivanja. Proxy mora dopustiti to odredište i port, kao i kontrolnu završnu točku FTP-a. Zato pravilo koje dopušta CONNECT samo prema kontrolnom portu može prihvatiti prijavu i odbiti popis.

Promjena samo kontrolnog porta ne može popraviti blokiran put podataka. Koristite zapisanu završnu točku podataka kada provjeravate mrežnu politiku.

Ovaj primjer pokreće eksplicitni FTPS na portu 21 i dogovara TLS. Za implicitnu FTPS završnu točku koristite odgovarajući način rada FtpSecure i port poslužitelja. U oba slučaja koristite stvarni TLS naziv hosta poslužitelja i konfiguraciju provjere certifikata.

Povezani članci