SSHトラフィックを転送する代わりにリダイレクトすることは可能ですか?どうすればいいですか?

SSHトラフィックを転送する代わりにリダイレクトすることは可能ですか?どうすればいいですか?

ここに画像の説明を入力してください。

私はトンネルを作成してサーバーAからサーバーBにSSHを渡すことができることを知っています。

私が求めているのは、上記のパターンの赤の代わりです。このシナリオは可能ですか?

  1. SSH経由でサーバーAに接続
  2. サーバーAは、クライアントにサーバーBに移動するように指示します。
  3. サーバーBはSSHを介してクライアントと直接通信します。

したがって、デフォルトでは、クライアントとサーバーを相互に導入して通信を終了するプロキシです。

ファイアウォールリダイレクトでは、多くのカスタム機能が提供されていないようです。

私が最終的に探しているのは、クライアントに透明な地理的位置に基づいてSSHを介してgitミラーにアクセスする方法です。

高度なシーンシーン

  1. サーバーAからサーバーBに近いクライアントをインポートすると、Bにリダイレクトされます。
  2. プッシュ中、クライアントはサーバーAに残ります。

答え1

残念ながら、SSHにはこれを行うための公開フラグはありません。 GITのいくつかのカスタムコードを書く必要があります。 (つまり、サーバーAのping時間がサーバーBより短い場合はAを使用し、その逆も同様です。)

答え2

次のパッケージを考えてみましょう。

  • サーバーまたはgitトランスポート初期化スクリプトを保持するマスターサーバー
  • クライアントでマスターサーバー(またはすべてのサーバー)でスクリプトを実行してターゲットサーバーを取得するようにGitエイリアスを定義します。

リダイレクトのみが必要な場合は、pullエイリアスが必要です。しかし、リダイレクトしたいかもしれませんfetch(もっと多くのコマンドでなければ、私はGitに精通していません)。

関連情報