SSH tunnel melalui IP publik untuk meneruskan IP internal

0

Saya memiliki database mysql yang hanya dapat diakses melalui jaringan internal IP 10. *: 3306 dan saya ingin menggunakan mesin lokal saya untuk akhirnya mengatur phpmyadmin ke admin, tapi saya pertama-tama hanya mencoba untuk mendapatkan pengaturan terowongan SSH. Saya menjalankan perintah ssh -N admin@host_b_public_ip -L 3308:host_b_internal_ip:3306tetapi perintah hanya menggantung di terminal saya. Jika saya membuka terminal lain dan mencoba mysql -P 3308 -u root -pdan memasukkan kata sandi root mysql host_b, saya ditolak. Apakah ada yang bisa saya uji apakah koneksi saya terbuka? Apakah perintah ini seharusnya dijalankan dalam mode terminal blocking atau tidak dijalankan dengan benar? Apakah yang saya coba lakukan di sini bahkan mungkin?

michael
sumber

Jawaban:

0
  1. Coba ssh -f -N *etc*. The -fmembuat perintah SSH berjalan di latar belakang.
  2. Coba mysql -h 127.0.0.1 -P 3308 *etc*. The -h 127.0.0.1memberitahu mysqluntuk mencoba terhubung ke server jaringan di localhost, bukan server lokal. Karena aturan port forwarding, koneksi jaringan kemudian diteruskan ke server jarak jauh. Jika Anda tidak menggunakan -hflag, ia hanya mencoba untuk berbicara dengan server MySQL lokal, dan tidak masuk ke jaringan sama sekali.
cpast
sumber