ကွန်ရက် proxy ကို JSch session သို့ ချိတ်ဆက်ခြင်း
SFTP လွှဲပြောင်းမှု အသုံးပြုသော SSH session ကို မဖွင့်မီ JSch ၏ HTTP CONNECT သို့မဟုတ် SOCKS5 အဒပ်တာ ကို ရွေးပါ။
JSch သည် ကွန်ရက် proxy ကို SSH session ပေါ်တွင် ထားသည်။ ထို session အပေါ် ဖွင့်ထားသော SFTP ချန်နယ်သည် နောက်ပိုင်း တည်ဆောက်ထားသော လမ်းကြောင်းကို အသုံးပြုသည်။
ရည်ရွယ်ထားသော SSH ဆာဗာသို့ ကြိုတင်ပြင်ဆင်ထားပြီးသော session အတွက် မချိတ်ဆက်မီ HTTP CONNECT ဂိတ်ဝေးကို ရွေးပါ။
ProxyHTTP gateway = new ProxyHTTP("proxy.example", 8080);
session.setProxy(gateway);
session.connect(10000);
session သည် SSH ဦးတည်ရာ၊ လော့ဂ်အင် ဖွဲ့စည်းမှုနှင့် ဟိုစ့်သော့ မူဝါဒကို ဆက်လက်ထားရှိသည်။ ဂိတ်ဝေး လိပ်စာသည် ကြားခံကို ဖော်ပြသည်။ ၎င်း၏ မူဝါဒသည် ဦးတည်ရာ၏ အမှန်တကယ် SSH ပို့ကို ခွင့်ပြုရမည်။ ခွင့်ပြုထားသော အများသုံး လမ်းကြောင်းရှိ အများသုံး SFTP ဆာဗာအတွက် HTTP proxy စာရင်း သည် ပထမ ဥပမာအတွက် ဂိတ်ဝေး လိပ်စာများကို ပေးသည်။ proxy အထောက်အထား မပါသော အဒပ်တာ အသစ်ကို အသုံးပြုပြီး အမှန်တကယ် SSH ဟိုစ့်နှင့် ပို့အတွက် ခွင့်ပြုချက်ကို အတည်ပြုပါ။
SOCKS5 ဝန်ဆောင်မှုအတွက် အစား သက်ဆိုင်ရာ အဒပ်တာကို အသုံးပြုပါ။
session.setProxy(new ProxySOCKS5("proxy.example", 1080));
အဆုံးမှတ်၏ ပရိုတိုကောနှင့် ကိုက်ညီသော အဒပ်တာကို ရွေးပါ။ HTTP proxy နှင့် SOCKS နားထောင်သူသည် တူညီသော ညှိနှိုင်းမှုကို နားမလည်ပါ။
JSch ၏ HTTP Basic proxy လော့ဂ်အင် သင့်လျော်သောနေရာတွင် မချိတ်ဆက်မီ gateway.setUserPasswd(proxyUser, proxyPassword) ကို ခေါ်ပါ။ SSH အကောင့်သည် session ပေါ်တွင် ပြင်ဆင်ထားဆဲ ဖြစ်သည်။ session ချိတ်ဆက်ပြီးနောက် SFTP ချန်နယ်ကို ဖွင့်ပါ၊ လွှဲပြောင်းမှု ပြီးဆုံးသောအခါ ချန်နယ်နှင့် session ကို ဖြုတ်ပါ။