MXterm Pro

SSH Port Forwarding di Mac dengan MXterm Pro: Aturan -L Lokal dan Fitur yang Tidak Ada

Henry AGI
5 menit baca
Terminal on the SSH tab port forwarding panel: a local forward to port 5432, then psql, and a note that closing the panel keeps the forward

MXterm Pro punya GUI untuk SSH port forwarding di Mac, tetapi cakupannya sempit: sebuah panel di tab SSH yang terbuka, untuk menambah dan membatalkan forward lokal (-L) ke 127.0.0.1 di server. Panel ini tidak punya opsi remote (-R) atau SOCKS, dan tidak menyimpan aturan. Cocok untuk forward ke database atau UI admin, bukan untuk tunnel yang ingin Anda pertahankan. Halaman ini membahas batas-batas itu, bukan SSH tunneling dari nol.

Apa yang dilakukan panel port forwarding di MXterm Pro?

Panel MXterm Pro menambah dan membatalkan forward lokal di koneksi SSH yang sudah terbuka di tab Anda. Panel tidak membuka koneksi kedua dan tidak meminta Anda login lagi. Setiap aturan dikirim ke proses ssh yang sedang berjalan sebagai perintah kontrol, jadi forward memakai sesi yang sedang Anda ketik.

Panel ini dibuka dari panel SFTP yang menempel di samping tab SSH, yaitu panel file remote yang sama untuk menjelajah dan mengedit. Tombol di headernya punya tooltip Pengelola Penerusan Port & Tunnel SSH dan membuka jendela berjudul Penerusan Port & Tunnel SSH. Pane shell biasa tidak punya panel SFTP, jadi tidak punya tombol forwarding juga.

Setiap tab SSH menjalankan ssh bawaan sistem dengan ControlMaster=auto dan ControlPath bersama. Tombol Mulai mengirim ssh -O forward -L <spec> ke master itu. Tombol Hentikan mengirim ssh -O cancel -L <spec>.

Catatan kaki panel berbunyi "Seluruh aliran yang diteruskan dienkripsi oleh SSH". Itu benar dalam pengertian biasa: ini forward OpenSSH yang sama dengan ssh -L, dengan enkripsi yang sama, bukan transport yang berbeda.

Bagaimana cara menambah forward lokal, dan perintah apa yang dihasilkan?

Di MXterm Pro, tiga kolom, Nama, Port Lokal dan Port Jarak Jauh, menjadi satu forward -L di koneksi yang terbuka, misalnya ssh -O forward -L 127.0.0.1:5432:127.0.0.1:5432. Tidak ada kolom host tujuan dan tidak ada pilihan arah. Langkah-langkah ini mengasumsikan host sudah tersimpan di SSH manager (lihat dokumentasi SSH dan SFTP).

1. Buka host sebagai tab SSH. Shift+Cmd+H membuka SSH manager, dan Hubungkan membuka tab yang menjalankan ssh bawaan sistem. Login di terminal seperti biasa. Login itulah koneksi yang akan dipakai forward.

2. Klik tombol forwarding di header panel SFTP. Di bawah Tambah Penerusan Port Baru, isi nama (placeholder-nya menyarankan Postgres 5432), port lokal dan port jarak jauh, lalu tekan Tambah Aturan. Port harus dari 1 sampai 65535. Port di luar rentang itu ditolak dengan error sebelum ssh sempat menerimanya.

3. Tekan Mulai pada aturan itu. Badge berubah dari BERHENTI menjadi BERJALAN hanya setelah ssh menerima forward tersebut.

Jika ssh menolak, teks error dari ssh sendiri muncul dengan warna merah di atas daftar dan badge tetap BERHENTI. Hentikan membatalkan forward. Menghapus aturan yang sedang berjalan mengirim pembatalan yang sama, tetapi jika pembatalan itu gagal, barisnya tetap hilang dan tidak ada error yang ditampilkan.

Untuk Port Lokal 5432 dan Port Jarak Jauh 5432, app mengirim ssh -O forward -L 127.0.0.1:5432:127.0.0.1:5432 ke koneksi tab itu, dengan alamat <user>@<host>. Arahkan psql atau klien database Anda ke 127.0.0.1:5432 di Mac, dan lalu lintasnya keluar di port 5432 di server.

Bentuk umumnya adalah 127.0.0.1:<local>:127.0.0.1:<remote>.

Panduan terkaitCara Mengelola Banyak Server SSH dan VM Cloud di Mac

Ke mana forward bisa mengarah? Hanya ke localhost di server

Setiap aturan yang dibuat panel MXterm Pro menuju 127.0.0.1 sebagaimana dilihat server SSH. Itu mencakup Postgres, Redis, atau UI admin yang berjalan di server itu sendiri. Panel tidak bisa menjangkau mesin ketiga di belakang server, misalnya db.internal:5432, karena formnya tidak punya kolom host tujuan dan kode mengisi 127.0.0.1 untuk Anda.

Baris aturan menampilkan 127.0.0.1:<local> → <server>:<remote>, dengan alamat server Anda di sisi kanan. Bacalah sebagai "port <remote> di server itu sendiri". Forward tetap berakhir di alamat loopback server itu sendiri, bukan di interface lain.

Sisi Mac juga sudah ditentukan. Spec mengikat port lokal ke 127.0.0.1 secara eksplisit, sehingga baris GatewayPorts yes di ~/.ssh/config tidak bisa mempublikasikan port database hasil forward ke jaringan Anda. Hanya program di Mac ini yang bisa terhubung.

Untuk host ketiga, ketik sendiri forward-nya di pane shell biasa: ssh -L <local>:db.internal:5432 <user>@<bastion>. Itu OpenSSH biasa yang berjalan di terminal sungguhan.

Menutup panel tidak menghentikan forward

Menutup panel MXterm Pro tidak membatalkan forward yang sedang berjalan. Forward milik koneksi SSH di balik tab, bukan milik daftar di panel. Panel hanya di-mount selama terbuka, tombol tutupnya hanya menutup panel, dan tidak ada langkah pembersihan yang mengirim -O cancel. Hanya Hentikan dan tombol hapus yang membatalkan satu forward.

Menutup seluruh koneksi bersama juga mengakhiri semua forward di dalamnya: tombol Reset koneksi di panel file (muncul saat server menolak login atau memaksa penggantian password) melakukannya, begitu juga mengedit pengaturan koneksi host atau menghapus dan menambahkan ulang host di SSH manager.

Tutup panel saat ada aturan BERJALAN, buka lagi, dan Anda mendapat daftar kosong, sementara port-nya mungkin masih listen.

OpenSSH, bukan app, yang menentukan berapa lama forward yang sedang berjalan tetap listen. -O forward dan -O cancel adalah perintah yang dikirim ke master multiplexing. Man page ssh_config menyebut ControlPersist menjaga master itu tetap di latar belakang setelah sesi terakhir ditutup. Master diakhiri setelah idle, tanpa koneksi client, selama waktu yang ditetapkan.

Setiap tab SSH di sini dimulai dengan ControlPersist=10m, jadi waktunya adalah 10 menit.

Karena master menahan koneksi, forward yang ditambahkan dengan cara ini bisa bertahan lebih lama dari tab, sehingga menutup tab SSH belum tentu langsung mengakhirinya. Perilakunya di Windows belum diperiksa.

Untuk memeriksa forward yang tersisa, lsof -iTCP:<port> -sTCP:LISTEN menunjukkan apakah masih ada yang listen di port itu.

Untuk melepasnya, batalkan di master yang sama dengan yang dipakai app: ssh -o ControlPath=$HOME/.mxterm/sockets/%r@%h:%p -p <port> -O cancel -L 127.0.0.1:<local>:127.0.0.1:<remote> <user>@<host>. Pakai port, user dan host persis seperti yang tersimpan di SSH manager (port-nya 22 kecuali Anda mengubahnya).

Jika koneksi sudah hilang, Mulai gagal dengan pesan ssh sendiri, biasanya Control socket connect(...): No such file or directory. Buka host di tab SSH dan tekan Mulai lagi. Panel tidak menyambungkan ulang forward, dan tidak ada kode di dalamnya yang memeriksa ulang badge BERJALAN setelah ssh pertama kali menerima forward. Mendeteksi sesi yang terputus adalah urusan keepalive, dibahas di panduan SSH timeout.

Yang tidak dilakukan port forwarding di MXterm Pro

Antarmuka MXterm Pro hanya menawarkan forward lokal (-L): tanpa opsi forward remote, tanpa proxy SOCKS dinamis, tanpa kolom host tujuan. Aturan tidak disimpan, jadi tidak ada yang kembali setelah koneksi ulang.

Panel ini juga memerlukan tab SSH yang terbuka. Tombolnya ada di panel SFTP, yang hanya ada di samping tab SSH, dan forward membutuhkan koneksi yang dibuka tab itu. Pane shell lokal, atau host tersimpan yang belum Anda hubungkan, tidak punya apa pun untuk dilewati forward.

Di Windows, anggap tunnel belum diuji. Kode SSH, SFTP dan tunnel MXterm Pro bergantung pada variabel HOME dan ControlMaster OpenSSH, dan dokumentasi app menandai kombinasi itu UNVERIFIED di Windows. Kode tunnel membangun path socket dari HOME. Tanpanya, Mulai melaporkan bahwa master ssh tidak ditemukan.

Forwarding tidak punya batas paket di kode: panel tidak memeriksa status Pro dan tidak membatasi jumlah aturan. Batas Free yang memang menyentuhnya adalah daftar host SSH, yang secara default hanya menampung 5 host tersimpan di paket Free.

Kapan memakai panel, dan kapan mengetik ssh sendiri?

Pakai panel untuk forward cepat ke sesuatu di server itu sendiri, seperti database, Redis atau halaman web internal. Anda bisa memulai dan menghentikannya tanpa keluar dari sesi. Ketik ssh sendiri saat Anda butuh tujuan di host ketiga, forward terbalik, proxy SOCKS, atau aturan yang ingin disimpan untuk lain kali.

Pane di MXterm Pro adalah terminal sungguhan, jadi perintah ssh dengan -L, -R atau -D yang diketik di pane biasa berperilaku seperti di mana pun OpenSSH berjalan. App tidak mengelola, mendaftar atau menyimpan forward itu. Biasanya forward itu bertahan selama proses ssh tersebut berjalan, kecuali ~/.ssh/config Anda sendiri mengaktifkan ControlMaster dengan ControlPersist.

Untuk contoh kerja yang berjalan di atas koneksi SSH, lihat menjalankan Ollama bersama sesi SSH.

Untuk mencobanya, buka host tersimpan sebagai tab SSH, buka panel forwarding dari header SFTP, dan tambahkan satu aturan untuk port yang selama ini Anda forward manual. Jika itu mencakup kasus Anda, jendela ssh -L tambahan bisa ditutup. Jika Anda butuh lebih dari forward lokal ke server itu sendiri, teruskan mengetik ssh.

Lihat sendiri cara kerjanya

SSH multi-pane, Command Recipes (Cmd+J) dan Control Room (sebelumnya War Room) multi-agent: Anda bisa mulai gratis.

Unduh MXterm Pro

Sudah punya MXterm Pro? Baca panduan penyiapan →

Baru mengenal MXterm Pro? Lihat harga →

Pertanyaan yang Sering Diajukan

Apa itu SSH local port forwarding, dan apakah panel MXterm Pro melakukannya?

SSH local port forwarding adalah opsi -L OpenSSH: man page ssh menjelaskannya sebagai meneruskan koneksi di host lokal ke host dan port tertentu di sisi remote. Panel MXterm Pro menawarkan ini, tetapi hanya forward lokal, di tab SSH yang terbuka. Tujuannya selalu 127.0.0.1 di server, jadi 127.0.0.1:<local> di Mac Anda menjangkau <remote> di server.

Apakah MXterm Pro mendukung port forwarding remote (-R) atau SOCKS (-D)?

Tidak di panel MXterm Pro. Antarmukanya hanya membuat forward lokal (-L), selalu ke 127.0.0.1 di server. Anda tetap bisa mengetik perintah ssh dengan -R atau -D di pane shell biasa, karena pane adalah terminal sungguhan. Itu OpenSSH biasa, dan MXterm Pro tidak mendaftar, menyimpan atau menghentikan forward tersebut.

Apakah MXterm Pro menyimpan aturan port forwarding saya?

Tidak. Daftar aturan MXterm Pro hanya ada selama panel terbuka, jadi kosong setiap kali Anda membukanya dan tidak ada yang dipulihkan setelah koneksi ulang. Menutup panel tidak membatalkan forward yang berjalan. Periksa dengan lsof atau batalkan dengan ssh -O cancel jika Anda butuh port itu kembali.

Bisakah saya forward ke database di mesin lain di belakang server, seperti db.internal:5432?

Tidak dari panel MXterm Pro. Host tujuan dikunci di 127.0.0.1 sebagaimana dilihat server, jadi hanya layanan di server itu sendiri yang bisa dijangkau. Untuk mesin di belakangnya, ketik forward di pane shell biasa, misalnya ssh -L <local>:db.internal:5432 <user>@<bastion>.

Mengapa Mulai menampilkan "No such file or directory" di panel port forwarding MXterm Pro?

Itu pesan dari ssh sendiri yang muncul saat tidak ada koneksi terbuka untuk host tersebut, sehingga forward tidak punya tempat untuk menempel. Buka host di tab SSH, login, lalu tekan Mulai lagi. Panel menampilkan teks error dari ssh apa adanya dan tidak menyembunyikannya, sementara badge tetap BERHENTI.

Bisakah komputer lain di jaringan saya menjangkau port yang di-forward dengan MXterm Pro?

Tidak lewat panel MXterm Pro. Panel meng-bind sisi lokal ke 127.0.0.1 secara eksplisit, jadi hanya program di Mac yang sama yang bisa terhubung, bahkan jika ~/.ssh/config Anda mengatur GatewayPorts atau Anda biasa memakai -g. Forward yang Anda ketik sendiri mengikuti opsi apa pun yang Anda berikan.

Apakah SSH tunnel berfungsi di MXterm Pro di Windows?

Belum diverifikasi. Fitur SSH, SFTP dan tunnel bergantung pada variabel HOME dan ControlMaster OpenSSH, dan dokumentasi app sendiri menandainya belum diverifikasi di Windows. Build Windows x64 tersedia tetapi belum ditandatangani dengan Authenticode. Jangan mengandalkan panel forwarding di sana tanpa memeriksanya sendiri.

Tanya AI tentang MXterm Pro

Buka jawaban langsung di ChatGPT, Claude atau Perplexity, berdasarkan halaman ini. Jawaban ditulis oleh asisten, bukan kami, jadi periksa sumber yang dikutipnya.

Pertanyaan yang dikirimApa yang bisa dilakukan panel SSH port forwarding di MXterm Pro, dan apa yang tidak bisa?