我創造了我的SSH密鑰accordingly:的OpenSSL無法加載證書後端
ssh-keygen -t rsa -C "[email protected]"
這會給我的兩個文件:
myKey.key.pub
myKey.key
然後轉換爲PEM格式我運行command:
ssh-keygen -f myKey.key.pub -e -m pem > myKey.pem
myKey.pem是要爲後端提供的文件C program。
不過,我一直堅持的類似error:
unable to load certificate
140387178489504:error:0906D06C:PEM routines:PEM_read_bio:no start
line:pem_lib.c:703:Expecting: TRUSTED CERTIFICATE
所以,我也跟着steps:
openssl rsa -text -in file.key -inform DER
openssl pkcs8 -in file.key -inform der
我也查了一些其他comments和suggestions。但問題仍然存在:
error:0D0680A8:ASN1 encoding routines:ASN1CHECK_TLEN:wrong tag:tasn_dec.c:1338
error:0D07803A:ASN1 encoding routines:ASN1CHECK_ITEM_EX_D2I:nested asn1 error:tasn_dec.c:390:Type=X509_SIG
此證書將與後端一起使用。或者獲取文件pem的方法是實際創建並手動編輯它?如果是這樣,那麼certificate部分來自哪裏?
有什麼建議可能是我的錯誤?所有意見都非常歡迎:)
SSH key!= SSL證書。你想達到什麼目的? – Jakuje
Hi @Jakuje!我用過:我用過:ssh-keygen -f myKey.key.pub -e -m pem> myKey.pem。那麼應該用什麼作爲證書?非常感謝你。 –
要獲得SSL/TLS證書,您需要使用_private_密鑰(並且在您的情況下以及許多但不是所有其他OpenSSH _private_密鑰文件與OpenSSL兼容)來生成_Certificate簽名請求_ aka CSR並將CSR提交至證書管理局又名CA獲得證書。如果你想讓陌生人信任你的服務器,你需要使用像Verisign,GoDaddy,LetsEncrypt等公共CA.如果只有你或者你認識你的人喜歡朋友/同事,你可以使用openssl創建你自己的ad-hoc CA ,甚至是自簽名證書(無CA)。 –