Melakukan Koneksi SSH via Socks Proxy

Posted by

SSH Socks Proxy – Bermula ketika saya ditunjuk untuk melakukan setup VPS pada salah satu klien Excellent, skema yang digunakan yaitu Zimbra Multi Server (1 MTA, 1 LDAP, dan 1 Mailbox) dengan catatan hanya server MTA yang dapat terkoneksi langsung ke internet dan memiliki 1 IP publik, sedangkan untuk Mailbox dan LDAP hanya memiliki IP private dan untuk koneksi ke internet harus melalui proxy yang dipasang pada server MTA.

Nah yang membuat saya bingung ketika akan melakukan penyalinan data dari server lama ke server yang baru di setup ini, proses penyalinan menggunakan rsync dengan metode pull, menjalankan rsync dari server baru (mailbox) untuk menyalin data dari server lama, ndilalah nya server mailbox untuk koneksi ke internet harus melalui proxy, kalau http proxy sudah bisa, tapi ini kan rsync, menggunakan port 22 SSH, saya akhirnya searching bagaimana cara melakukan koneksi SSH via proxy (socks proxy) MTA, akhirnya ketemu, hanya dengan menambahkan sedikit parameter. Kalau command untuk SSH default nya seperti berikut

ssh root@ip-tujuan atau ssh root@ip-tujuan -p port

Kalau via socks proxy, hanya menambahkan parameter berikut

ssh root@ip-tujuan -o "ProxyCommand=nc -X connect -x ip-proxy:3128 %h %p"

Saya pun sedikit mengulik agar dapat digunakan juga untuk koneksi rsync karena basis nya sama-sama menggunakan SSH, untuk command default rsync kan seperti ini

rsync -avhHP --progress /opt/ root@ip-tujuan:/folder/tujuan/

Kemudian saya coba tambahkan  parameter berikut pada perintah rsync agar dapat melalui socks proxy nya MTA

rsync -avhHP -e 'ssh -p 10212 -o "ProxyCommand=nc -X connect -x 10.26.0.177:3128 %h %p"' --progress --exclude-from=/opt/zimbra/v/not-rsync.txt /opt/ root@ip-tujuan:/folder/tujuan/

Maksud dari ProxyCommand itu kita menggunakan program nc (netcut) untuk koneksi ke proxy server di definisikan dengan connect -x ip-proxy:port, saya diatas juga menggunakan port 10212 untuk koneksi SSH.

Silakan dicoba dan selamat ber SSH ria via socks proxy 😀

2 comments

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.