Ssh

無法通過隧道遠端複製文件

  • June 17, 2014

我正在嘗試使用 scp 從 server1 (localhost) 獲取文件。我正在從網關 server2 訪問 server1(這是唯一可以從 Internet 訪問的網關)。

我可以使用以下方法打開 ssh 連接:

ssh -p 2222 -L 8080:localhost:443 myUser@server2

通過Google搜尋,我發現 scp 命令應該是這樣的:

scp -P 2222 myUser@127.0.0.1:/sourcePathToFile/file destinationPathToFile

但我得到的是

ssh: connect to host 127.0.0.1 port 2222: Connection refused

這些是 /etc/hosts 中的條目

127.0.0.1   localhost
127.0.1.1   server3

我究竟做錯了什麼?

假設這兩個命令都在 server1 上執行…

如果您可以使用上面列出的 ssh 選項登錄到 server2(連接到 server2 上的埠 2222),那麼您應該能夠使用複製文件

scp -P 2222 /sourcePathToFile/file myUser@server2:/destinationPathToFile

(除非我錯過了將您自己的本地埠 8080 轉發到遠端埠 443 的目的,這是 ssh 命令的**-L 8080:localhost:443**部分的效果。)

您的 scp 命令的問題在於,它試圖連接到執行在 server1 埠 2222 上的 ssh 伺服器,而它應該連接到執行在 server2 埠 2222 上的 ssh 伺服器。

引用自:https://serverfault.com/questions/605779