Ssh

如何通過 SSH/SFTP 通過網關係統(反之亦然)將文件從本地系統傳輸到另一個系統?

  • March 17, 2022

我有以下情況,

(1) local machine ↔︎ (2) cluster gateway ↔︎ (3) cluster machine

我想將文件從我的 (1) 傳輸到 (3),反之亦然。沒有辦法直接從 (1) SSH 到 (3),我只能從 (2) 內到達 (3)。目前我首先通過 sftp 將文件從 (1) 傳輸到 (2),然後從 (2) 傳輸到 (3)。這非常麻煩,特別是因為我在 (2) 上的儲存空間非常有限。

我發現答案很可能是 ssh 隧道。但我不確定這是否確實是這樣做的方法,也不知道如何設置或使用它。

我不是 IT 人,這些事情有時對我來說很難看透。特別是對於 ssh 和 ssh 密鑰,我要小心並確保我知道自己在做什麼。

有沒有人可能有一些見解?感謝幫助!

如果您在本地有最近的 OpenSSH (8.0) ,您可以使用-J(jump) 開關

scp -J user@intermediate /local/path/file.txt user@target:/remote/path/

對於舊版本(但至少為 7.3),您可以使用ProxyJump指令

scp -o ProxyJump=user@intermediate /local/path/file.txt user@target:/remote/path

還有其他選項,例如ProxyCommand或埠轉發,您甚至可以在更舊版本的 OpenSSH 上使用它們。OpenSSH是否支持多跳登錄?


如需下載,請參閱如何從只能通過 SSH 連接到另一台主機的主機下載文件?

引用自:https://unix.stackexchange.com/questions/630872