SOCKS ibilbidea Commons Net-en FTPSClient-entzat
Erabili Commons Net-en socket proxy interfazea FTPS-rako, zerbitzariaren ostalari-izena, datu-konexio pasiboak eta TLS egiaztapena mantenduz.
SOCKS bitartekari bat eskuragarri dagoenean, Commons Net-en FTPSClient-ek heredatutako socket proxy interfazea erabil dezake. Mantendu FTPS zerbitzaria konexioaren helmuga gisa:
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);
Honek FTPS konexio esplizitu bat hasten du. Aplikazioak oraindik ere saioa hastea, datuen babesaren negoziazioa, transferentziaren kudeaketa eta deskonexioa bere gain ditu. Trust manager nuluaren ezarpenak JVMren trust manager lehenetsiak hautatzen ditu, Commons Net-en data bakarreko ziurtagiri-egiaztapenaren ordez. Erabili aurreikusitako trust store-a eta zerbitzariaren ziurtagiriaren ostalari-izena.
Transferentzia pasiboetan, uneko FTPSClient inplementazioak bere datu-socketa ere konfiguratutako proxyaren bidez sortzen du, eta gero TLS geruza gehitzen du. Saioa hasi ondoren, erabili modu pasiboa eta negoziatu behar den datu-kanal babestua FTPS API arruntaren bidez. Kontrol-konexio arrakastatsu batek ez du lan hori osatzen; datu-konexio pasiboak bide bereizia izaten jarraitzen du.
Kodeak kontu gehigarririk gabeko SOCKS zerbitzu bat suposatzen du. Autentifikazioaren euskarriak berrikuspen bereizia behar du hautatutako Java exekuzio-ingurune eta hedapenerako.
Hau ez da FTPHTTPClient-en HTTP CONNECT interfazea. Anai-arreba horrek FTP arrunta HTTP tunel baten bidez kudeatzen du; bere portua aldatzeak ez du FTPS gehitzen. Sareak HTTP proxy bat soilik baimentzen badu, aukeratu CONNECT bai kontrol-bidean bai datu-bidean onartzen duen FTPS inplementazio edo mantentzen den egokitzapen bat.
Mantendu proxyaren konfigurazioa bezeroaren bizi-ziklo osoan, eta berrikusi berrerabilitako instantzia bat berriro konektatu aurretik: FTPS deskonexioak socket fabrikak berrezartzen ditu. Ez ordeztu ziurtagiri-egiaztapenak trust-all manager batekin ibilbidea arrakastatsua dirudien arren.