ProxySOCKS5 torna uma sessão JSch cliente de um serviço SOCKS existente. Por si só, não oferece a funcionalidade oposta—um listener SOCKS que transporta outros clientes através de SSH.

JSch jsch = new JSch();
jsch.setKnownHosts("/home/alex/.ssh/known_hosts");

Session session = jsch.getSession("alex", "ssh.example.net", 22);
ProxySOCKS5 proxy = new ProxySOCKS5("127.0.0.1", 1080);
session.setProxy(proxy);

Execute isto antes da autenticação SSH e da conexão de sessão da aplicação. Prepare o ficheiro known-hosts com a identidade do servidor SSH pretendido e mantenha essas verificações através do proxy.

A interface de credenciais do objeto proxy, quando necessário, autentica-se no intermediário. Não substitui o início de sessão SSH. Para um servidor SSH acessível publicamente onde intermediários públicos são permitidos, a lista de proxies SOCKS5 oferece candidatos para o ProxySOCKS5. Use o formulário sem conta de proxy mostrado e confirme que o nó permite o host e a porta SSH reais.

Para requisitos de listener, distinga o encaminhamento fixo para um alvo predefinido da negociação SOCKS dinâmica para cada cliente. Um método de tunelamento não relacionado não fornece esse servidor. Verifique a capacidade pública exata da biblioteca instalada em vez de interpretar o «suporte SOCKS» como ambas as tarefas.

Artigos relacionados