無法從遠端到本機 Mac 進行 scp

無法從遠端到本機 Mac 進行 scp

我已經瀏覽了 SU 和 SO 的帖子,尋找一種方法來使其發揮作用,但我將舉起雙手並堅持使用 GUI。我想要將scpZIP 檔案從遠端伺服器傳輸到本機。我可以透過 SSH 正常登入。我可以建立、刪除、編輯等...但無法下載 ZIP。迄今為止「最接近的」。

# scp backup.zip [email protected]:/Users/Steven/Desktop/test

為了清楚起見,「backup.zip」是我想從伺服器上下載的內容,位於我的目前目錄中。 「Steven」是我在筆記型電腦上的使用者名稱。我已經用這些位址清空了本機的 IP 位址,路徑是我想要複製到的位置的路徑。

然而,這樣一來,我得到:

ssh: connect to host 111.111.111.11 port 22: Connection timed out lost connection

有趣的是,我沒有退出會話。它只是讓我留在輸入命令之前的位置。我錯過了一些語法嗎?

答案1

我是否正確理解您正在使用 SSH 連接到遠端主機,然後您scp在遠端主機上運行以將檔案複製回本地主機?

在不了解這兩台主機的情況下,您的本機主機完全有可能可以與遠端主機建立 SSH 連接,但遠端主機無法與本機建立 SSH 連線。

如果您可以從本機主機到遠端主機建立 SSH 連接,則可以scp在本機主機而不是遠端主機上執行:

scp remoteuser@remotehost:/path/to/backup.zip /Users/Steven/Desktop/test/

答案2

您確定可以從遠端電腦透過該 IP 位址存取您的本機 Mac?例如,如果您的本機 Mac 上有一個 RFC 1918 私人位址(例如 192.168.xy),因為它位於 NAT 閘道後面,而遠端電腦位於 NAT 閘道的公共端,則遠端電腦不會能夠透過該位址存取您的本地Mac,因為RFC 1918 私有位址不可路由。您必須在 NAT 閘道上放置連接埠映射,以將連接埠 22 從其公共位址對應到 Mac 專用位址上的連接埠 22,然後scp對應到 NAT 閘道的公共位址。

或按照 @Kenster 的建議scp,從本機電腦以相反的方式運行命令。

相關內容