SOCKS5 မှတစ်ဆင့် JSch SSH ချိတ်ဆက်မှုများ
SOCKS5 မှတစ်ဆင့် JSch SSH ဆက်ရှင်းကို ဖွဲ့စည်းပြီး ထို client လက္ခဏာကို SSH ၏ ရွေ့လျားနေသော SOCKS နားထောင်သူ ပံ့ပိုးခြင်းနှင့် ခွဲခြားပါ။
ProxySOCKS5 သည် JSch ဆက်ရှင်းကို ရှိပြီးသား SOCKS ဝန်ဆောင်မှု၏ client ဖြစ်စေသည်။ ၎င်းသည် ဆန့်ကျင်ဘက် လက္ခဏာ—အခြား client များကို SSH မှတစ်ဆင့် သယ်ဆောင်သော SOCKS နားထောင်သူ—ကို သူ့ဘာသာ မပံ့ပိုးပါ။
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);ဤအရာကို application ၏ SSH စစ်ဆေးအတည်ပြုခြင်းနှင့် ဆက်ရှင်ချိတ်ဆက်မှုမတိုင်မီ လုပ်ဆောင်ပါ။ known-hosts ဖိုင်ကို ရည်ရွယ်ထားသော SSH ဆာဗာ၏ အထောက်အထားဖြင့် ပြင်ဆင်ပြီး ထိုစစ်ဆေးမှုများကို proxy မှတစ်ဆင့် ထိန်းသိမ်းပါ။
proxy အရာဝတ္တု၏ အထောက်အထား အင်တာဖေ့စ်သည် လိုအပ်သည့်အခါ ကြားခံထံ စစ်ဆေးအတည်ပြုသည်။ ၎င်းသည် SSH လော့ဂ်အင် ကို အစားထိုးမပေးပါ။ အများသူငှာ ရောက်ရှိနိုင်သော SSH ဆာဗာအတွက်၊ အများသူငှာ ကြားခံများကို ခွင့်ပြုထားလျှင် SOCKS5 proxy စာရင်း သည် ProxySOCKS5 အတွက် ကိုယ်စားလှယ်လောင်းများကို ပေးသည်။ ပြသထားသော proxy အကောင့်မပါသော ပုံစံကို အသုံးပြုပြီး node သည် အမှန်တကယ် SSH host နှင့် port ကို ခွင့်ပြုကြောင်း အတည်ပြုပါ။
နားထောင်သူ လိုအပ်ချက်များအတွက် ကြိုတင်သတ်မှတ်ထားသော ပစ်မှတ်တစ်ခုသို့ ပုံသေ ပေးပို့ခြင်းကို client တစ်ခုစီအတွက် ရွေ့လျားသော SOCKS ညှိနှိုင်းမှုနှင့် ခွဲခြားပါ။ မသက်ဆိုင်သော tunnel နည်းလမ်းသည် ထိုဆာဗာကို မပံ့ပိုးပါ။ “SOCKS ပံ့ပိုးမှု” ကို အလုပ်နှစ်ခုအဖြစ် အနက်ဖွင့်မည့်အစား ထည့်သွင်းထားသော library ၏ တိကျသော အများသူငှာ စွမ်းရည်ကို စစ်ဆေးပါ။