3台のコンピュータ間の接続の作成

3台のコンピュータ間の接続の作成

3 つの異なるネットワークに 3 台のマシンがあります。

:

  • インターネットに接続しているが、ローカル マシンには接続されていない、sudo あり。

仕事:

  • WWWインターネット経由でSSHが利用可能
  • SSH接続できる仕事、しかしその逆はない
  • 仕事送信と受信の両方のSSHを実行できます
  • 私は持っているいいえこのコンピュータでのsudoアクセス
  • マシンにはiptablesインストールされていません

サーバ:

  • サーバWWWインターネットに接続されています
  • サーバSSH接続できる仕事、しかしその逆はない
  • サーバ送信 ssh のみ実行できます。
  • このコンピューターでは sudo アクセス権を持っています。

これで、ネットワークは以下を実行できるようになりました。

ホーム -> 職場 <- サーバー

この構成ではどうすれば接続するサーバ? 3 台のマシンはすべて Ubuntu を実行しています。3 台のマシンすべてにコマンド ライン アクセスのみ可能です。

答え1

この ssh ソリューションでは sudo は必要ありません。

まず、サーバーのコマンド ラインで、WORK マシンから SERVER へのリモート ポート転送を設定します。

SERVER$ ssh -f -N -R 23456:SERVER:22 workuser@WORK

その後、そのプロセスが実行されている限り、次の操作を実行できるはずです。

HOME$ ssh -t workuser@WORK ssh -p23456 serveruser@localhost

つまり、HOME からは WORK を経由して、SSH トンネル経由で SERVER マシンに接続できるはずです。

:23456 を使用して、ssh が WORK マシンのすべてのインターフェースで listen するように指定できるはずですが、私の環境ではうまくいきませんでした。おそらく、GatewayPorts が無効になっているためです。うまくいけば、2 番目のコマンドは次のように簡略化できます。

HOME$ ssh -p23456 serveruser@WORK

関連情報