Vedhæft netværksproxien til en JSch-session
Vælg JSchs HTTP CONNECT- eller SOCKS5-adapter, før du åbner den SSH-session, som en SFTP-overførsel bruger.
JSch lægger netværksproxien på SSH-sessionen. En SFTP-kanal, der åbnes over den session, bruger derefter den etablerede rute.
For en session, der allerede er konfigureret mod den tilsigtede SSH-server, vælges en HTTP CONNECT-gateway før tilslutning:
ProxyHTTP gateway = new ProxyHTTP("proxy.example", 8080);
session.setProxy(gateway);
session.connect(10000);
Sessionen holder stadig SSH-destinationen, login-konfigurationen og værtsnøglepolitikken. Gateway-adressen angiver mellemleddet. Dets politik skal tillade destinationens faktiske SSH-port. For en offentligt tilgængelig SFTP-server på en tilladt offentlig rute tilbyder HTTP-proxylisten gateway-adresser til det første eksempel. Brug en ny proxy-adapter uden proxy-legitimationsoplysninger, og bekræft tilladelsen for den faktiske SSH-vært og -port.
Til en SOCKS5-tjeneste bruges den tilsvarende adapter i stedet:
session.setProxy(new ProxySOCKS5("proxy.example", 1080));
Vælg den adapter, der passer til endepunktets protokol. En HTTP-proxy og en SOCKS-lytter forstår ikke samme forhandling.
Hvor JSchs HTTP Basic-proxy-login er passende, kaldes gateway.setUserPasswd(proxyUser, proxyPassword) før tilslutning. SSH-kontoen forbliver konfigureret på sessionen. Åbn SFTP-kanalen, efter at sessionen er tilsluttet, og afbryd kanalen og sessionen, når overførslen er færdig.