Bagaimana cara tunnel dan browse halaman web server di laptop saya?

55

Saya menjalankan aplikasi web di salah satu server lab saya, dan saya sudah menyiapkan X11 Penerusan pada mesin-mesin itu. Anggota lab lainnya dapat menggali melalui SSH, dan menelusuri aplikasi web itu di browser lokal mereka di rumah.

Saya tidak bisa. Terakhir kali saya cek dengan mereka, hampir tidak ada yang perlu saya lakukan.

Ketika saya mengetik 192.168.1.113/webappsaya tidak mendapatkan apa-apa.

Ada tips?

Terima kasih.


Saya akhirnya menggunakan metode kedua :)

ssh -L 8080:<server-ip-address>:80 <username>@<remote-addr> -N
CppLearner
sumber
@BlueXrider umum, ya, pada topik, ya. Untuk sesuatu seperti ini, versi-versi Ubuntu tidak terlalu penting, tentang topiknya sama seperti Apa itu torrent dan bagaimana cara menggunakannya yang dianggap sesuai topik. :)
jrg

Jawaban:

105

Ada dua cara Anda bisa melakukan ini dengan SSH.

Tunnel Everything dengan proxy SOCKS

Masuk ke mesin jarak jauh menggunakan perintah berikut:

ssh -D 8080 remote-host

Sekarang pergi ke pengaturan proxy browser Anda, dan konfigurasikan untuk menggunakan proxy SOCKS dengan nama host 127.0.0.1dan port 8080(atau port apa pun yang Anda lewati untuk -Dopsi). Sekarang semua halaman yang Anda muat di peramban web Anda akan disetel melalui koneksi SSH. Anda sekarang harus dapat mengakses halaman web pribadi dengan cara yang sama seperti yang Anda lakukan dari host jarak jauh.

Setelah selesai, atur kembali pengaturan proxy browser Anda menjadi normal.

Sisi buruk dari metode ini adalah semua lalu lintas lain di browser web juga akan melalui koneksi SSH. Sisi baiknya, Anda dapat mengakses server jarak jauh dengan nama host aslinya, dan dapat dengan mudah mengakses beberapa situs pribadi.

Tunnel satu port.

Metode alternatif adalah menggunakan SSH untuk meneruskan satu port:

ssh -L 8080:server-hostname:80 remote-host

Sekarang jika Anda mengarahkan browser web http://localhost:8080/Anda, Anda akan melihat konten http://server-hostname/seperti itu akan muncul dari host jarak jauh.

Manfaat dari metode ini adalah ia meninggalkan sisa lalu lintas browser sendirian. Kelemahannya adalah beberapa tautan mungkin tidak berfungsi jika situs jarak jauh menggunakan referensi URL absolut. Jika sebagian besar situs menggunakan referensi relatif URL, maka metode ini harus memadai.

Untuk kedua solusi ini, tidak ada yang spesial dari port 8080. Anda dapat menggunakan nomor port lokal gratis yang Anda inginkan, asalkan Anda ingat untuk menggunakan nomor port yang sama dalam sshdoa dan browser web.

James Henstridge
sumber
3
Terima kasih. Itu sangat membantu! Saya berhasil melakukannya dengan cara ini: ssh -L 8080:<server-ip-address>:80 <username>@<remote-addr> -Nsesuatu seperti ini (metode kedua).
CppLearner
Apakah benar bahwa saya harus mengonfigurasi hanya proxy kaus kaki pada metode pertama (lihat: spareclockcycles.files.wordpress.com/2009/04/… ). Yaitu itu tidak akan berhasil, jika saya arahkan proxy http ke 127.0.0.1:8080? Jika ini benar, mungkin Anda bisa menunjukkan dalam jawaban Anda yang hebat, bahwa seseorang harus mengatur hanya proxy kaus kaki.
siswa
Jika Anda menggunakan Chrome (browser kedua?) Anda dapat mengirimkan parameter proxy untuk SOCKS5 secara langsung saat mulai: chromium-browser --proxy-server = "socks5: // localhost: 8080"
panticz.de