JSch coloca o proxy de rede na sesión SSH. Unha canle SFTP aberta sobre esa sesión emprega despois a ruta establecida.

Para unha sesión xa configurada cara ao servidor SSH desexado, escolla unha pasarela HTTP CONNECT antes de conectar:

ProxyHTTP gateway = new ProxyHTTP("proxy.example", 8080);
session.setProxy(gateway);
session.connect(10000);

A sesión conserva o destino SSH, a configuración de inicio de sesión e a política de clave de host. O enderezo da pasarela identifica o intermediario. A súa política debe permitir o porto SSH real do destino. Para un servidor SFTP accesible publicamente nunha ruta pública permitida, a lista de proxies HTTP ofrece enderezos de pasarela para o primeiro exemplo. Use un adaptador de proxy novo sen credenciais de proxy e confirme o permiso para o host e o porto SSH reais.

Para un servizo SOCKS5, use no seu lugar o adaptador correspondente:

session.setProxy(new ProxySOCKS5("proxy.example", 1080));

Escolla o adaptador que coincida co protocolo do extremo. Un proxy HTTP e un escoitador SOCKS non entenden a mesma negociación.

Cando o inicio de sesión de proxy HTTP Basic de JSch sexa axeitado, chame gateway.setUserPasswd(proxyUser, proxyPassword) antes de conectar. A conta SSH permanece configurada na sesión. Abra a canle SFTP despois de que a sesión conecte e desconecte a canle e a sesión cando remate a transferencia.

Artigos relacionados