第一次使用 scp -r 之前,我一直收到錯誤“主機金鑰驗證錯誤”

第一次使用 scp -r 之前,我一直收到錯誤“主機金鑰驗證錯誤”

我以前從未使用過 bash 語言(scp -r 是 bash 的一部分嗎?)並且我想將一個 C++ Xcode 檔案複製到不同的 IDE(更具體地說是針對機器人控制器)。該 C++ 檔案位於資料夾中,我聽說您用於scp -r資料夾?所以我嘗試使用它: 主機金鑰是控制器的IP位址,我不太確定是什麼,有人只是告訴我要使用它。scp -r Desktop/oroni-club/gyro.cpp [email protected]:"[path]" "[path]"

我也不斷收到此錯誤:Host key verification failed. lost connection,並且它最終不會將 C++ 檔案複製到其他 IDE。

我不知道該怎麼做以及如何將 C++ 文件複製到另一個非 C++ IDE(這個僅提供 C 和 Python,但您仍然可以通過終端使用 bash 添加 C++ 文件),我是全新的對此...

答案1

主機金鑰是 RSA(或 DSA 或橢圓曲線)公鑰,ssh/scp 伺服器(運行 sshd 的伺服器)透過它向 ssh/scp 用戶端驗證自身身份,因此您知道自己沒有連接到冒名頂替伺服器。第一次連線到新伺服器時,您的 ssh/scp 用戶端會詢問您是否要接受提供的主機金鑰。如果您接受它,它將被存儲,~/.ssh/known_hosts以便將來可以用來驗證該主機。

如果您確定自己沒有遇到中間人攻擊或其他冒名頂替者,則可以透過編輯~/.ssh/known_hosts刪除該行來清除先前為該主機名稱或 IP 位址快取的主機金鑰主機,或者您可以使用ssh-keygen -R hostname它來刪除它。如果您始終透過 IP 位址進行連接,請使用該 IP 位址而不是主機名稱作為 的參數ssh-keygen -R …

相關內容