WinSCP FTPS prisijungia per tarpinį serverį, bet negali išvardyti failų
Naudodami HTTP CONNECT FTPS, patikrinkite ir pasyvųjį duomenų ryšį, ir valdymo ryšį.
FTPS prisijungimas įrodo, kad valdymo ryšys veikė. Katalogo sąrašui reikia kito ryšio, todėl tarpinis serveris gali leisti prisijungti ir užblokuoti kitą veiksmą.
Jei FTPS serveris yra aiškusis (explicit), sukonfigūruokite valdymo maršrutą ir pasyvųjį režimą naudodami 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");Nustatymas ProxyMethod su reikšme 3 pasirenka HTTP CONNECT. Atidarykite šias parinktis įprastu programos WinSCP Session gyvavimo ciklu ir pridėkite neapdorotus nustatymus ProxyUsername ir ProxyPassword, kai tarpininkas reikalauja autentifikavimo.
Stebėkite sąrašo klaidą
Seanso žurnale patikrinkite suderintą pasyvųjį duomenų galinį tašką ir jo ryšio klaidą. Tarpinis serveris turi leisti tą paskirties vietą ir prievadą, taip pat FTP valdymo galinį tašką. Todėl taisyklė, leidžianti CONNECT tik į valdymo prievadą, gali priimti prisijungimą ir atmesti sąrašą.
Pakeitus tik valdymo prievadą, užblokuotas duomenų kelias nesutvarkomas. Tikrindami tinklo politiką naudokite žurnale įrašytą duomenų galinį tašką.
Šiame pavyzdyje aiškusis FTPS paleidžiamas 21 prievade ir deramasi dėl TLS. Jei FTPS galinis taškas yra numanomasis (implicit), naudokite atitinkamą FtpSecure režimą ir serverio prievadą. Abiem atvejais naudokite tikrąjį serverio TLS mazgo vardą ir sertifikatų tikrinimo konfigūraciją.