Ssh
如何通過 SSH/SFTP 通過網關係統(反之亦然)將文件從本地系統傳輸到另一個系統?
我有以下情況,
(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 連接到另一台主機的主機下載文件?