ラップトップでサーバーWebページをトンネリングして参照するにはどうすればよいですか?


55

ラボサーバーの1つでWebアプリを実行し、それらのマシンで既にX11フォワーディングをセットアップしています。他のラボメンバーは、SSHをトンネリングし、自宅のローカルブラウザでそのWebアプリを閲覧できます。

できません。前回彼らに確認したとき、私がする必要のあることはほとんどありません。

入力し192.168.1.113/webappても何も得られません。

任意のヒント?

ありがとう


私は2番目の方法を使用することになりました:)

ssh -L 8080:<server-ip-address>:80 <username>@<remote-addr> -N

@BlueXrider全般、はい、トピック、はい。このようなものについては、Ubuntuのバージョンは実際には重要ではありません。トレントとは何なのか、トピックと見なされるどのように使用するのかについては、トピックとほぼ同じです。:)
jrg

回答:


105

SSHでこれを行うには2つの方法があります。

SOCKSプロキシを使用してすべてをトンネルする

次のコマンドを使用して、リモートマシンにログインします。

ssh -D 8080 remote-host

ブラウザのプロキシ設定に移動し、ホスト名127.0.0.1とポート8080(または-Dオプションに渡したポート)でSOCKSプロキシを使用するように設定します。これで、WebブラウザーにロードするすべてのページがSSH接続を介してトンネリングされます。これで、リモートホストからの場合と同じ方法でプライベートWebページにアクセスできるようになります。

完了したら、ブラウザのプロキシ設定を通常に戻します。

この方法の欠点の1つは、Webブラウザー内の他のすべてのトラフィックもSSH接続を経由することです。逆に、実際のホスト名でリモートサーバーにアクセスでき、複数のプライベートサイトに簡単にアクセスできます。

単一のポートをトンネルします。

別の方法は、SSHを使用して単一のポートを転送することです。

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

Webブラウザをhttp://localhost:8080/に向けると、http://server-hostname/リモートホストから表示される内容が表示されるはずです。

この方法の利点は、ブラウザトラフィックの残りをそのままにすることです。欠点は、リモートサイトが絶対URL参照を使用している場合、一部のリンクが機能しない可能性があることです。サイトが主に相対URL参照を使用している場合、この方法で十分です。

これらのソリューションの両方について、ポートについて特別なことは何もありません8080ssh呼び出しとWebブラウザーで同じポート番号を使用することを忘れない限り、任意の空きローカルポート番号を使用できます。


3
ありがとう。とても助かりました!私はなんとかこうやってやった:このよう ssh -L 8080:<server-ip-address>:80 <username>@<remote-addr> -Nなもの(2番目の方法)。
CppLearner

最初の方法でソックスプロキシのみを構成する必要があるのは正しいですか(spareclockcycles.files.wordpress.com/2009/04/…を参照)。つまり、httpプロキシを127.0.0.1:8080にポイントすると動作しませんか?これが正しければ、おそらくあなたはあなたの素晴らしい答えで、ソックスプロキシのみをセットアップする必要があることを指摘することができます。
学生

あなたはクローム(?秒ブラウザ)を使用する場合は、起動時に直接SOCKS5のプロキシパラメータを渡すことができます:クロムブラウザ--proxy-サーバー=「SOCKS5:// localhostを:8080」
panticz.de
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.