はい、これがセットアップです。私はローカルネットワークの外にいて、iSSH(iPad上)を使用してホームネットワークに接続しています。これまでのところ、トンネルを作成してホームメディアセンターをlocalhost
にリダイレクトしていました。したがって、アドレスバーにlocalhost:8080
と入力して、自宅のメディアセンターを参照できます。
local port : 8080
destination Host : localhost
destination port 8080
それはうまくいきました。
次に、さらに一歩進んで、接続しているメディアセンターに、192.168.1.112:8800
をリダイレクトするように指示します。これは、メディアセンターからアクセスし、基本的にメディアセンターをゲートウェイとして使用するマシンです。 ssh -L
を使用する必要があると思いますが、それが正しい方法かどうかはわかりません。
このトンネルを作成するにはどうすればよいですか?
IPadで接続しているローカルポート(太字)とメディアセンターでアクセスしているリモートポート(太字ではない)を区別するために太字を使用しています。
これはあなたがやってきたことのようです:
ssh -L 808:localhost:8080 [email protected]
「-L 808:」は、リモートリソースを取得し、それをローカルポート(この場合は808)にバインドすることを意味します。 iPadでlocalhost:808と入力して、このリモートリソースに接続します。次の部分「localhost:8080」(メディアセンターの観点から)は、iPadのポート808にバインドしているリソースのホスト名とポートです。これは、メディアセンターがネットワーク上で認識できる任意のホスト名またはIPアドレスとポートに変更できます。
192.168.1.112:8800に接続すると、次のようになります。
ssh -L [aLocalPort]:192.168.1.112:8800[email protected]
次に、iPadで接続するために使用するプログラムにlocalhost:[aLocalPort]と入力して、192.168.1.112:8800に接続できます。 。 (ここで、[aLocalPort]は9000などの未使用のローカルポートです。便宜上、宛先(8800)で使用されているのと同じポートを使用できます。もし良かったら)
はい、-L 192.168.1.112:8800
を追加できます。これにより、ローカルマシン(つまりクライアント)のポートがトンネルにバインドされ、リモートサーバーによって指定されたアドレスとポートに転送されます。
Ssh tunnelコマンドが入力されるマシンは、"your Host"と呼ばれます。
ローカル:-L Specifies that the given port on the local (client) Host is to be forwarded to the given Host and port on the remote side.
_ssh -L sourcePort:forwardToHost:onPort connectToHost
_は、sshを使用してconnectToHost
に接続し、すべての接続試行をlocalsourcePort
からonPort
というマシンのポートforwardToHost
に転送します。このポートには、connectToHost
マシンからアクセスできます。
リモート:-R Specifies that the given port on the remote (server) Host is to be forwarded to the given Host and port on the local side.
_ssh -R sourcePort:forwardToHost:onPort connectToHost
_は、sshを使用してconnectToHost
に接続し、すべての接続試行をremotesourcePort
からonPort
というマシンのポートforwardToHost
に転送します。これは、ローカルマシンからアクセスできます。
2番目の画像はこのトンネルを表しています。 remotehost
はメディアセンターです。 farawayhost
は、対象のピンクのポートを備えた192.168.1.112マシンです(描画ポート_456
_ですが、場合はポート_8800
_)。したがって、コマンドは次のようになります。
_ssh -L 123:192.168.1.112:8800 mediacenter
_
もちろん、緑のポートの番号_123
_を好きなように変更して、経由でアクセスすることもできます。
_localhost:123
_
ここでも、_123
_は、緑色のポートの任意の(トンネリングコマンドで選択された)ポート番号です。
実際には答えではありませんが、トンネルにはプレーンsshの代わりにautosshを使用することをお勧めします。タイムアウトなどが発生すると、トンネルが自動的に再確立されます(sshキーを設定している場合)。