JSch מניח את פרוקסי הרשת על סשן ה-SSH. ערוץ SFTP שנפתח מעל אותו סשן משתמש לאחר מכן במסלול שהוקם.

עבור סשן שכבר מוגדר אל שרת ה-SSH המיועד, בחרו שער HTTP CONNECT לפני החיבור:

ProxyHTTP gateway = new ProxyHTTP("proxy.example", 8080);
session.setProxy(gateway);
session.connect(10000);

הסשן עדיין מחזיק את יעד ה-SSH, את תצורת ההתחברות ואת מדיניות מפתח המארח. כתובת השער מזהה את המתווך. המדיניות שלה חייבת להתיר את פורט ה-SSH בפועל של היעד. עבור שרת SFTP נגיש לציבור במסלול ציבורי מותר, רשימת פרוקסי ה-HTTP מציעה כתובות שער לדוגמה הראשונה. השתמשו במתאם פרוקסי חדש בלי פרטי פרוקסי ואשרו הרשאה למארח ולפורט ה-SSH בפועל.

עבור שירות SOCKS5, השתמשו במקום זאת במתאם המתאים:

session.setProxy(new ProxySOCKS5("proxy.example", 1080));

בחרו את המתאם המתאים לפרוטוקול של נקודת הקצה. פרוקסי HTTP ומאזין SOCKS אינם מבינים את אותה משא ומתן.

כאשר התחברות פרוקסי HTTP Basic של JSch מתאימה, קראו ל-gateway.setUserPasswd(proxyUser, proxyPassword) לפני החיבור. חשבון ה-SSH נשאר מוגדר בסשן. פתחו את ערוץ ה-SFTP לאחר שהסשן מתחבר, ונתקו את הערוץ ואת הסשן כשההעברה מסתיימת.

מאמרים קשורים