他のサーバー経由でSFTP接続する

他のサーバー経由でSFTP接続する

大学のサーバーにある自分のアカウントに接続したいのですが、そこにいるときは

 “ssh user@FinalServer/home/user” 

または、

 “sftp://user@FinalServer/home/user”.

しかし、問題は自宅にいるときに発生します。ここでは、まず具体的なポートの具体的なサーバーに接続し、次に FinalServer に接続する必要があります。

 1st. “ssh user@IntermediateServer:54022”
 2nd. “ssh user@FinalServer/home/user”

そして、最初に sftp を実行するには、中間サーバーに対して実行し、次に最終サーバーに対して実行する必要があります。可能であれば、最初の例のようなフォルダーを作成したいのですが、方法がわかりません。

Linux と Windows の別の解決策を探しています。

Putty または WinSCP を使って何かをしようとしているのですが、やり方がわかりません。どうもありがとうございます。英語が下手で申し訳ありません。

答え1

中間ホストが TCP 転送を許可している場合は、目的を達成できますが、中間サーバーへの ssh 接続は依然として必要です。これらのコマンドは両方とも、自宅から実行します。

ssh -f -p 54022 user@IntermediateServer -L 2000:FinalServer:22 -N
ssh -p 2000 user@localhost

最初のコマンドは、ポート 2000 のホーム PC からポート 22 (SSH の標準) の最終サーバーまで、ポート 54022 の中間サーバーを経由してトンネルを確立します。最初のコマンドを実行して、ホーム PC ( netstat -na | grep LIST | grep 2000) に新しい LISTEN するポートがあるかどうかを確認します。ある場合は、トンネルが稼働しています。ローカル PC が最終サーバー (ポート 2000) であるかのようにコマンドを実行します。

注: PC 上で SSH サーバーが実行されていると思われるため、ポート 2000 を使用していますが、任意のポートを使用できます。

関連情報