SSHを使用してサーバーを介して特定のポートをトンネリングできますか?

SSHを使用してサーバーを介して特定のポートをトンネリングできますか?

私はサーバーを介して特定のポートをトンネリングしようとしていますが、どこから始めるべきか、SSHを使用するのに適しているのかわかりません。

私の現在の状況はこんな感じです。

  1. メディアサーバーは次の場所にあります。http://example.com:3535(実際のドメイン名ではありません)
  2. このドメインへのアクセスがネットワークからブロックされました。
  3. ロンドンにOpenVPNを実行しているVPSがあり、そのVPSに接続すると、次から何でもアクセスできます。http://example.com
  4. 私は人々が自分の時間に何をしているのかを知っているMonkeysplat.comにアクセスできるように、他の人に自分のVPNを公開したくありません。私はその一部になりたくありません!

トラフィックをルーティングする必要がある代替ドメイン名を使用できますか?example.com私のVPSを介して?したがって、私はVPSに接続しているように見えるネットワークブロックをバイパスします。

それでは、どうすればいいですか?私のVPSはUbuntu 14.04を実行しています(助けになる場合)。

答え1

ssh -L 3535:example.com:3535 -p port [email protected](*)を使用すると、localhostのポート3535を介してexample.com:3535に接続できます。追加のドメイン名は必要なく、IPアドレスのみを使用してVPSに接続できます。

(*) 実際のドメイン名がありません。

答え2

SSH(すでにVPNがあるため)やDNSは必要ありません。 VPNエンドポイントがユーザーが会話したい人を知っている場合は役立ちます。

ルーティングが必要です。 example.comが1.2.3.4でVPNピアアドレスが192.168.42.1の場合は、次のようにルートテーブルを変更できます(OpebVPN設定に統合可能)。

ip route add 1.2.3.4/32 via 192.168.42.1

答え3

私はこの記事の助けを借りてトンネルを作りました。http://www.thegeekstuff.com/2013/11/reverse-ssh-tunnel

以下は、リモートサーバー側に座っている友人がサーバー上で実行する必要があるコマンドです。

ssh -fN -R 7000:localhost:22 ユーザー名@yourMachine-ipaddress

したがって、リモートサーバーからコンピューターへのSSH接続要求は、コンピューターのポート7000へのSSH接続要求がリモートサーバーのポート22に転送されるようにします。

今ポート7000であなたのコンピュータからあなたのコンピュータへのSSH接続要求をしなさい:

SSHユーザー名@localhost -p 7000

関連情報