使用私鑰登入時出現 ssh 錯誤「載入的公鑰格式無效」和「libcrypto 中的錯誤」?

使用私鑰登入時出現 ssh 錯誤「載入的公鑰格式無效」和「libcrypto 中的錯誤」?

更新

當我嘗試生成公鑰時,它仍然給出錯誤“libcrypto 中的錯誤”

載入密鑰“breakthis”:libcrypto 中出現錯誤

私鑰如下

我正在嘗試解決 Hack the box machine

我能夠獲得一個私鑰,然後將該私鑰轉換為 JOHNTHERIPPER 的哈希值並成功破解它

但是現在當我嘗試透過 ssh 登入時出現以下錯誤 我已經搜尋了很多但無法解決這些錯誤


ssh -i id_rsa [email protected]

load pubkey "id_rsa": invalid format 

Load key "id_rsa": error in libcrypto

[email protected]'s password: 

答案1

就我而言,我使用剪貼簿複製了金鑰文件,它創建了一個類似的文件,但沒有終止換行符。這足以讓 libcrypto 陷入困境。在 vim 中開啟檔案並:wq關閉它,足以新增換行符,它解決了我的問題。

答案2

錯誤:載入公鑰“id_rsa”:格式無效

當 ~/.ssh/config 中使用公鑰而不是使用私鑰時,就會發生這種情況。

答案3

我透過在文件 最後一行的末尾Load key "id_rsa": error in libcrypto添加控製字元(新行)來修復該錯誤。LF-----END OPENSSH PRIVATE KEY-----.pem

之前(不起作用):

在此輸入影像描述

之後(有效):

在此輸入影像描述

LF請注意最後一個非空白行中的附加控製字元。LF只需按一下按鍵即可新增控製字元ENTER

用於透過 SSH 連接到我的遠端電腦的命令:

chmod 400 key.pem
ssh -i "key.pem" [email protected]

注意:錯誤訊息可以是:

  • Load key "id_rsa": error in libcrypto(我在我的 Ubuntu 計算機上看到了它)。
  • Load key "key.pem": invalid format(我在我的 Windows 電腦上看到了它)。

要在 Notepad++ 中顯示行尾控製字元:

在此輸入影像描述

答案4

當我使用 2 個 github 帳戶和 2 個 ssh 金鑰時,我遇到了這個錯誤,但是當我像下面這樣更改設定檔時,就消除了這個錯誤,

myDir$ ssh -T [email protected]
Load key "/home/taxi/.ssh/mhmd_personal.pub": error in libcrypto
[email protected]: Permission denied (publickey).

由此

Host *
  AddKeysToAgent yes
  IdentityFile ~/.ssh/mhmd_personal.pub
  # IdentityFile ~/.ssh/id_ed25519

Host *
  AddKeysToAgent yes
  IdentityFile ~/.ssh/mhmd_personal
  # IdentityFile ~/.ssh/id_ed25519

刪除了.pub設定檔的副檔名。

相關內容