2

これが私の状況です

  • 自宅のラップトップからssh経由でサーバーAにアクセスできました。
  • サーバーBには、サーバーAからssh経由でのみアクセスできます。
  • サーバーCには、サーバーBからssh経由でのみアクセスできます。

とにかく、ラップトップからサーバーCに直接sshできるように、.ssh / configを構成できますか?サーバーCからラップトップにファイルを定期的に転送する必要があるため、これが必要です。私は「scp」を使用していますが、このssh階層を手動で確認するのは面倒です。sshの魔法を使ってこれを行うもっと簡単な方法があるかどうか疑問に思います。

4

1 に答える 1

1

次のようにSSHを許可するようにSSHトンネルを設定します。

A => B
B => C

LinuxでAを介してBへのトンネルを設定する方法の例を次に示します。

ssh -f myusername@hostA -N -L 4444:hostB:22

次に、hostAのポート4444にsshで転送し、hostBのポート22(SSHが一般的に実行される場所)に転送できるようにする必要があります。上記のコマンドを実行した後、これを試してください。

ssh -p 4444 hostA

これでhostBに接続されます。これを機能させるには、ポートを変更する必要がある場合があります。hostAのポート4444がすでに使用されている場合は、別のポートを選択する必要があります。これが機能すると仮定すると、異なるホスト名で同じコマンドを使用して、B=>Cからトンネルを設定できます。

ssh -f myusername@hostA -N -L 4444:hostB:4444
ssh -f myusername@hostB -N -L 4444:hostC:22

これは、Webブラウジング用にSOCKSプロキシを設定する場合にも役立ちます。これは、私のWebトラフィックが大学からのものであるように見せるため、科学雑誌へのオンラインアクセスを使用できるようにするためです。

参照:

于 2010-12-31T03:36:32.053 に答える