關於ssh-keygen 生成的key以「BEGIN OPENSSH PRIVATE KEY」開頭

如今使用命令 ssh-keygen -t rsa  生成ssh,默認是以新的格式生成,id_rsa的第一行變成了「BEGIN OPENSSH PRIVATE KEY」 而不在是「BEGIN RSA PRIVATE KEY」,此時用來msyql、MongoDB,配置ssh登錄的話,可能會報 「Resource temporarily unavailable. Authentication by key (/Users/youname/.ssh/id_rsa) failed (Error -16). (Error #35)」 提示資源不可用,這就是id_rsa 格式不對形成的html

解決方法(一):git

使用 ssh-keygen -m PEM -t rsa -b 4096 來生成github

-m 參數指定密鑰的格式,PEM(也就是RSA格式)是以前使用的舊格式ssh

-b:指定密鑰長度; 加密

-e:讀取openssh的私鑰或者公鑰文件; spa

-C:添加註釋; orm

-f:指定用來保存密鑰的文件名; htm

-i:讀取未加密的ssh-v2兼容的私鑰/公鑰文件,而後在標準輸出設備上顯示openssh兼容的私鑰/公鑰; blog

-l:顯示公鑰文件的指紋數據; 資源

-N:提供一個新密語;

-P:提供(舊)密語;

-q:靜默模式;

-t:指定要建立的密鑰類型

 

解決方法(二):

將密鑰轉換爲PuTTy ppk格式並返回來解決

tempkey的內容:

```
-----BEGIN OPENSSH PRIVATE KEY-----
b3BlbnNzaC1rZXktdjEAAAAABG5vbmUAAAA...
-----END OPENSSH PRIVATE KEY-----
```
轉換爲ppk格式:
`puttygen tempkey -o tempkey.ppk`

轉換回openssh格式:
`puttygen tempkey.ppk -O private-openssh -o tempkey.oldformat`

tempkey.oldformat的內容:

```
-----BEGIN RSA PRIVATE KEY-----
MIIJJwIBAAKCAgEAzmmS5aA0....
-----END RSA PRIVATE KEY-----
```

參考地址:https://github.com/duplicati/duplicati/issues/3360

原文出處:https://www.cnblogs.com/soner/p/10412888.html

相關文章
相關標籤/搜索