Ruby Net::FTP preko SOCKS-a: prijava radi, preuzimanja se blokiraju
Prati kontrolnu i podatkovnu vezu Ruby FTP-a istom predviđenom proxy rutom.
Prijava na FTP koristi kontrolnu vezu. Zatim je za popis direktorija ili preuzimanje potrebna podatkovna veza, koja može propasti iako je prijava preko SOCKS-a uspjela.
Najprije utvrdi pasivni ili aktivni način. U pasivnom načinu klijent otvara novu vezu prema adresi i portu koje navede FTP poslužitelj. Ta veza također treba predviđenu proxy rutu.
Ruby integracija socketa
Net::FTP API u Rubyju dokumentira ponašanje veze i pasivnog načina. SOCKS integracija mora pokriti stvaranje socketa koje koriste i kontrolni i podatkovni put; proxy postavka HTTP klijenta negdje drugdje ih ne konfigurira.
Ako integracija mijenja ponašanje socketa globalno, pregledaj njezin opseg po konkurentnosti. Blok oko jednog prijenosa ne može izolirati druge dretve od promjena dijeljenog stanja.
Pružatelj može ponuditi statičnu završnu točku, ali to je značajka usluge, a ne opći SOCKS zahtjev. Gdje odvojene veze mogu koristiti različite izlaze, provjeri kako FTP poslužitelj povezuje svoju podatkovnu vezu s autentificiranom kontrolnom vezom.
Zabilježi dostignutu fazu, način i podatkovnu završnu točku, bez vjerodajnica. To razlikuje blokiran podatkovni put od neuspješne proxy prijave.