[英]"Fingerprint cannot be generated" when adding new SSH key to gitlab account
我正在嘗試向我的 GitLab 帳戶添加一個新的 ssh 密鑰,但我不斷收到以下錯誤:
Fingerprint cannot be generated
Key type is forbidden. Must be RSA, ECDSA, or ED25519
我所做的是去 Cmder 並輸入命令
ssh-keygen
cat ~/.ssh/id_rsa.pub
然后我通過 web 瀏覽器將密鑰復制到我的學校 GitLab 帳戶中,並出現上述錯誤。
為什么會這樣,我怎樣才能成功上傳我的密鑰?
您需要執行以下操作,而不僅僅是ssh-keygen
:
ssh-keygen -t ed25519 -C "email@example.com"
這將創建一個可與 Gitlab 一起使用的 ED25519 密鑰。 確保將電子郵件更改為您的電子郵件(與 gitlab 帳戶相關聯)。 然后將新生成的 .pub 密鑰復制到您之前所在的位置。
您很有可能正在從不應該存在的終端中的密鑰包裝中復制和粘貼換行符。
當您粘貼您的密鑰時,它應該全部是一行一行。 它可能以ssh-rsa
開頭(如果您生成 RSA 密鑰;其他密鑰類型將類似地開始)並以類似you@machine
結尾。 在ssh-rsa
之后應該有一個空格,在you@machine
之前應該有一個空格,但不應該存在換行符。
粘貼或在適當的文本編輯器中打開文件時手動刪除換行符,您可以在其中復制它而無需換行符。
我遇到了同樣的錯誤,然后使用了 terraform 生成的 SSH 密鑰並使用了以下輸出:
public_key_pem
通過使用輸出修復
public_key_openssh
使用生成 SSH 密鑰后 -
ssh-keygen -t ed25519 -C "<comment>"
然后會生成兩個文件id_ed25519
和id_ed25519.pub
在代碼編輯器中打開id_ed25519.pub
文件並復制粘貼整個 SSH 密鑰。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.