Połączenia SSH JSch przez SOCKS5
Skonfiguruj sesję SSH JSch przez SOCKS5 i oddziel tę funkcję klienta od udostępniania dynamicznego nasłuchiwacza SOCKS SSH.
ProxySOCKS5 czyni sesję JSch klientem istniejącej usługi SOCKS. Sama w sobie nie oferuje funkcji odwrotnej—nasłuchiwacza SOCKS przenoszącego innych klientów przez 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);Uruchom to przed uwierzytelnieniem SSH i połączeniem sesji aplikacji. Przygotuj plik known-hosts z tożsamością zamierzonego serwera SSH i zachowaj te kontrole przez proxy.
Interfejs poświadczeń obiektu proxy, gdy jest to potrzebne, uwierzytelnia się u pośrednika. Nie zastępuje logowania SSH. Dla publicznie dostępnego serwera SSH, gdzie dozwolone są publiczne pośredniki, lista proxy SOCKS5 oferuje kandydatów dla ProxySOCKS5. Użyj pokazanego formularza bez konta proxy i potwierdź, że węzeł zezwala na rzeczywisty host i port SSH.
W przypadku wymagań nasłuchiwacza odróżnij stałe przekazywanie do jednego z góry określonego celu od dynamicznych negocjacji SOCKS dla każdego klienta. Niepowiązana metoda tunelowania nie zapewnia tego serwera. Sprawdź dokładną publiczną możliwość zainstalowanej biblioteki, zamiast interpretować „obsługę SOCKS” jako oba zadania.