إرفاق وكيل الشبكة بجلسة JSch
اختر محوّل HTTP CONNECT أو SOCKS5 في JSch قبل فتح جلسة SSH التي يستخدمها نقل SFTP.
يضع 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 بعد اتصال الجلسة، وافصل القناة والجلسة عند انتهاء النقل.