Heg die netwerkproksie aan 'n JSch-sessie
Kies JSch se HTTP CONNECT- of SOCKS5-adapter voordat jy die SSH-sessie oopmaak wat 'n SFTP-oordrag gebruik.
JSch plaas die netwerkproksie op die SSH-sessie. 'n SFTP-kanaal wat oor daardie sessie oopgemaak word, gebruik dan die gevestigde roete.
Vir 'n sessie wat reeds op die beoogde SSH-bediener gerig is, kies 'n HTTP CONNECT-poort voordat jy verbind:
ProxyHTTP gateway = new ProxyHTTP("proxy.example", 8080);
session.setProxy(gateway);
session.connect(10000);
Die sessie hou steeds die SSH-bestemming, die aanmeldkonfigurasie en die beleid vir die gasheersleutel. Die poortadres identifiseer die tussenganger. Sy beleid moet die bestemming se werklike SSH-poort toelaat. Vir 'n publiek bereikbare SFTP-bediener op 'n toegelate openbare roete bied die HTTP-proksilys poortadresse vir die eerste voorbeeld. Gebruik 'n nuwe proksie-adapter sonder proksiemagtigings en bevestig toestemming vir die werklike SSH-gasheer en -poort.
Vir 'n SOCKS5-diens, gebruik eerder die ooreenstemmende adapter:
session.setProxy(new ProxySOCKS5("proxy.example", 1080));
Kies die adapter wat by die eindpunt se protokol pas. 'n HTTP-proksie en 'n SOCKS-luisteraar verstaan nie dieselfde onderhandeling nie.
Waar JSch se HTTP Basic-proksieaanmelding gepas is, roep gateway.setUserPasswd(proxyUser, proxyPassword) voordat jy verbind. Die SSH-rekening bly op die sessie gekonfigureer. Maak die SFTP-kanaal oop nadat die sessie verbind het, en ontkoppel die kanaal en die sessie wanneer die oordrag klaar is.