ProxySOCKS5 menjadikan sesi JSch sebagai klien layanan SOCKS yang sudah ada. Ia sendiri tidak menawarkan fitur sebaliknya—listener SOCKS yang membawa klien lain melalui SSH.

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);

Jalankan ini sebelum autentikasi SSH dan koneksi sesi aplikasi. Sediakan berkas known-hosts dengan identitas server SSH yang dimaksud dan pertahankan pemeriksaan itu melalui proxy.

Antarmuka kredensial objek proxy, bila diperlukan, mengautentikasi ke perantara. Itu tidak menggantikan proses masuk SSH. Untuk server SSH yang dapat dijangkau publik di mana perantara publik diizinkan, daftar proxy SOCKS5 menawarkan kandidat untuk ProxySOCKS5. Gunakan bentuk tanpa akun proxy yang ditampilkan dan pastikan node mengizinkan host dan port SSH yang sebenarnya.

Untuk kebutuhan listener, bedakan penerusan tetap ke satu target yang telah ditentukan dari negosiasi SOCKS dinamis untuk setiap klien. Metode tunneling yang tidak terkait tidak menyediakan server itu. Periksa kemampuan publik persis pustaka yang terpasang alih-alih menafsirkan “dukungan SOCKS” sebagai kedua tugas.

Artikel terkait