前幾天新工作到職,第一件事情就是用公司信箱加入 SSH key
過去新建都是要用的時候去 google 指令
你查到我查到大家查到的應該都是
就在我以為這麼簡單產出的時後
從終端機得到了 format 錯誤的訊息
當初有用相同的指令產過 key 一切正常,我打開金鑰檔案看到的開頭是
問了很多人都是一樣的反應
沒有 SSH key 沒辦法做事情啊!實在想不出辦法之下
我們嘗試直接在 server 下一樣的指令... 產出來的 key 可以用
看來是 mac 的問題了... 不對啊前幾個月我才產生過一組 key 用在 gitlab 上
直到我找到 這一篇
翻譯大概是:
「majave 10.14.1 版本在 sshkey-gen 時會遇到產出不是預期的 RSA 格式,而是 openSSH目前網路上所有能找得的資源基本上都不適用,要在指令加上 -m PEM」
感恩蘋果,讚嘆蘋果
居然搞出這麼雷的一個東西,居然去改變預設的ssh-keygen format 格式
真相大白,於是得到新的指令 for mac majave 10.14.1 版本
於是解決這個問題,因為很多人的 ssh-key 都是上古時期用到現在
甚至換電腦也是把金鑰搬移過去,我想這個問題應該會越來越常發生
而多會發生在新人身上,其他工程師一定會覺得這東西這麼簡單為什麼新人搞不定
殊不知藏了一個這麼大的雷,自己下來可能也會被雷一遍
希望這一篇可以幫上一些忙
如果被幫到可以在留言幫我 +1 一下讓我的虛榮心微微滿足一下
過去新建都是要用的時候去 google 指令
你查到我查到大家查到的應該都是
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
就在我以為這麼簡單產出的時後
從終端機得到了 format 錯誤的訊息
git@github.com: Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
當初有用相同的指令產過 key 一切正常,我打開金鑰檔案看到的開頭是
-----BEGIN OPENSSH PRIVATE KEY-----果然是錯誤的啊!應該要是 RSA 而不是 OPENSSH
問了很多人都是一樣的反應
你指令沒加 -t rsa 吧但是當我請他們現場產一組 key 的時候也跟我得到一樣的 OPENSSH
沒有 SSH key 沒辦法做事情啊!實在想不出辦法之下
我們嘗試直接在 server 下一樣的指令... 產出來的 key 可以用
看來是 mac 的問題了... 不對啊前幾個月我才產生過一組 key 用在 gitlab 上
直到我找到 這一篇
The default export publickey format is indeed rfc4716, but the format in the Q is an internal privatekey format and is OpenSSH's 'new' format, which didn't exist in 1999(!), and is no longer in described in current
翻譯大概是:
「majave 10.14.1 版本在 sshkey-gen 時會遇到產出不是預期的 RSA 格式,而是 openSSH目前網路上所有能找得的資源基本上都不適用,要在指令加上 -m PEM」
感恩蘋果,讚嘆蘋果
居然搞出這麼雷的一個東西,居然去改變預設的ssh-keygen format 格式
真相大白,於是得到新的指令 for mac majave 10.14.1 版本
ssh-keygen -m PEM -t rsa -b 4096 -C "your_email@example.com"
於是解決這個問題,因為很多人的 ssh-key 都是上古時期用到現在
甚至換電腦也是把金鑰搬移過去,我想這個問題應該會越來越常發生
而多會發生在新人身上,其他工程師一定會覺得這東西這麼簡單為什麼新人搞不定
殊不知藏了一個這麼大的雷,自己下來可能也會被雷一遍
希望這一篇可以幫上一些忙
如果被幫到可以在留言幫我 +1 一下讓我的虛榮心微微滿足一下
留言
張貼留言