SOCKS-útvonal a Commons Net FTPSClient számára
Használja a Commons Net socket-proxy felületét FTPS-hez, megőrizve a kiszolgáló hosztnevét, a passzív adatkapcsolatokat és a TLS-ellenőrzést.
Ha elérhető egy SOCKS-közvetítő, a Commons Net FTPSClientje használhatja az örökölt socket-proxy felületet. Tartsa meg az FTPS-kiszolgálót a kapcsolat céljaként:
var client = new org.apache.commons.net.ftp.FTPSClient(false);
client.setProxy(new java.net.Proxy(
java.net.Proxy.Type.SOCKS,
new java.net.InetSocketAddress("proxy.example", 1080)));
client.setTrustManager(null);
client.setEndpointCheckingEnabled(true);
client.setConnectTimeout(10000);
client.connect("ftps.example", 21);
Ez explicit FTPS-kapcsolatot indít. Az alkalmazás továbbra is felel a bejelentkezésért, az adatvédelem egyeztetéséért, az átvitel kezeléséért és a leválasztásért. A null trust manager beállítás a JVM alapértelmezett trust managerjeit választja a Commons Net csak dátumon alapuló tanúsítvány-ellenőrzése helyett. Használja a szándékolt trust store-t és a kiszolgáló tanúsítványának hosztnevét.
Passzív átviteleknél a jelenlegi FTPSClient-implementáció az adatsocketjét is a beállított proxyn keresztül hozza létre, majd hozzáadja a TLS-réteget. Bejelentkezés után használjon passzív módot, és egyeztesse a szükséges védett adatcsatornát a szokásos FTPS API-n keresztül. A sikeres vezérlőkapcsolat nem végzi el ezt a munkát; a passzív adatkapcsolat külön útvonal marad.
A kód további fiók nélküli SOCKS-szolgáltatást feltételez. A hitelesítés támogatásához külön felülvizsgálat szükséges a választott Java-futtatókörnyezet és üzembe helyezés számára.
Ez nem az FTPHTTPClient HTTP CONNECT felülete. Az a testvér a szokásos FTP-t HTTP-alagúton kezeli; a portjának megváltoztatása nem ad hozzá FTPS-t. Ha a hálózat csak HTTP-proxyt engedélyez, válasszon olyan FTPS-implementációt vagy gondozott adaptációt, amely CONNECT-t támogat a vezérlő- és az adatútvonalon is.
Tartsa meg a proxybeállítást a kliens teljes életciklusa alatt, és tekintse át újrahasznált példány újracsatlakoztatása előtt: az FTPS leválasztása visszaállítja a socketgyárakat. Ne cserélje le a tanúsítvány-ellenőrzéseket trust-all managerre, hogy az útvonal sikeresnek tűnjön.