Commons Net FTPSClient uchun SOCKS yo‘li
FTPS uchun Commons Net’ning socket proxy interfeysidan foydalaning, server host nomi, passiv ma’lumot ulanishlari va TLS tekshiruvini saqlab qolgan holda.
SOCKS vositachisi mavjud bo‘lganda, Commons Net’ning FTPSClient’i meros qolgan socket proxy interfeysidan foydalanishi mumkin. FTPS serverini ulanish manzili sifatida saqlang:
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);
Bu aniq FTPS ulanishini boshlaydi. Ilova hali ham kirish, ma’lumotlarni himoyalash bo‘yicha muzokara, uzatishni boshqarish va uzilishni o‘z zimmasiga oladi. null trust manager sozlamasi Commons Net’ning faqat sanaga asoslangan sertifikat tekshiruvi o‘rniga JVM’ning standart trust manager’larini tanlaydi. Ko‘zda tutilgan trust store va server sertifikatining host nomidan foydalaning.
Passiv uzatishlarda joriy FTPSClient amalga oshirilishi ma’lumot socket’ini ham sozlangan proxy orqali yaratadi, so‘ngra TLS qatlamini qo‘shadi. Kirgandan so‘ng passiv rejimdan foydalaning va kerakli himoyalangan ma’lumot kanalini oddiy FTPS API orqali kelishib oling. Muvaffaqiyatli boshqaruv ulanishi bu ishni tugatmaydi; passiv ma’lumot ulanishi alohida yo‘l bo‘lib qoladi.
Kod qo‘shimcha hisobsiz SOCKS xizmatini nazarda tutadi. Autentifikatsiya yordami tanlangan Java muhiti va joylashtirish uchun alohida ko‘rib chiqishni talab qiladi.
Bu FTPHTTPClient’ning HTTP CONNECT interfeysi emas. O‘sha aka-uka oddiy FTP’ni HTTP tunnel orqali boshqaradi; uning portini o‘zgartirish FTPS qo‘shmaydi. Agar tarmoq faqat HTTP proxy’ga ruxsat bersa, CONNECT’ni boshqaruv va ma’lumot yo‘llarining ikkalasida qo‘llab-quvvatlaydigan FTPS amalga oshirilishini yoki qo‘llab-quvvatlanadigan moslashuvni tanlang.
Proxy sozlamasini mijozning butun hayot tsikli davomida saqlang va qayta ishlatilgan nusxani qayta ulashdan oldin uni ko‘rib chiqing: FTPS uzilishi socket zavodlarini qayta o‘rnatadi. Yo‘l muvaffaqiyatli ko‘rinishi uchun sertifikat tekshiruvlarini trust-all manager bilan almashtirmang.