解决了

使用Lets加密棱镜中央和棱镜元素的证书

  • 2018年4月17日
  • 11回复
  • 2375次观点

徽章
我希望用允许加密通配符证书替换我的棱镜中央和棱镜元素部署的SSL证书。

我可以很容易地请求通配符证书

sudo certbot -d example.com -d * .example.com - 批量--preferred-挑战DNS-01 -Server HTTPS://acme-v02.api.letsencrypt.org/directory certonly

我生成了三个文件:
privkey = /etc/letsencrypt/live/example.com/privkey.pem.
链= /etc/letsencrypt/live/example.com/chain.pem.
fullchain = /etc/letsencrypt/live/example.com/fullchain.pem.

任何人都可以建议openssl命令我可以用来将这些.pem文件转换为棱镜中央/棱镜元素所需的所需格式吗?我从https://www.slsupportdesk.com/openssl-commands/尝试了多个命令,但我似乎无法找到确切的命令。

如果需要其他证书,还可以从这里获取中间/根证书。
https://letsencrypt.org/certificates/

我希望最终找到一种方法来脚本这个过程,所以如果有人知道如何通过CLI替换棱镜中央/棱镜元素的证明,我也会很欣赏。但最初,我很高兴找到正确的证书格式。
图标

最好的答案reinder.2018年11月30日,15:28

\r\nTo answer your question, openssl is not needed to convert the certificates.
\r\nWhat is tricky is to get Nutanix to take the chain.pem, after some frustrating tries I got it to work like this:
\r\n
\r\n ncli ssl-certificate import certificate-path=\/full\/path\/to\/cert.pem cacertificate-path=\/full\/path\/to\/mychain.pem key-path=\/full\/path\/to\/privkey.pem key-type=\"RSA_2048\"
\r\n
\r\nWhere mychain.pem I created by combining https:\/\/letsencrypt.org\/certs\/letsencryptauthorityx3.pem.txt with https:\/\/letsencrypt.org\/certs\/isrgrootx1.pem.txt
\r\nSo cat letsencryptauthorityx3.pem.txt isrgrootx1.pem.txt > mychain.pem
\r\n
\r\nHope this helps someone,
\r\n
\r\nReinder - TriOpSys - NL","className":"post__content__best_answer"}">
查看原版

此主题已关闭征询意见

11回复

你好,

更好地使用openssl创建CSR和密钥文件。将CSR带到您的证书颁发机构,并签署。你可以得到一个pem。拍摄PEM文件,键文件和root / CA捆绑并将其上传到棱镜控制台。

确保使用SAN或浏览器会抱怨。
徽章
我很感谢@lapfcukle的响应,但这意味着我需要从CA购买证书。使用LetsEncrypt使我能够获得免费的、有效的证书。

我从LetSencrypt获取有效证书,我只需要知道如何将它们转换为棱镜中央/棱镜元素可以使用的格式。
好的,如果你谷歌Nutanix Prism Letsencrypt,那么我会在这里发布这篇文章。
要回答您的问题,不需要OpenSSL来转换证书。
什么是棘手的是让Nutanix带领链条.Pem,经过一些令人沮丧的尝试,我把它搞定了这样的工作:

Ncli ssl-certificate import certificate-path=/full/path/to/cert。pem cacertificate-path = /全/道路/ / mychain。pem关键路径= /全/道路/ / privkey。pem键式= " RSA_2048 "

mychain的地方。pem是我结合https://letsencrypt.org/certs/letsencryptauthorityx3.pem.txt和https://letsencrypt.org/certs/isrgrootx1.pem.txt创建的
所以cat letsencryptauthorityx3.pem.txt是rgrootx1.pem.txt > mychain.pem

希望这有助于某人,

reder - TriOpSys - NL
UserLevel 1.
徽章 +2

就像一个更新安装SSL-Cert与让加密,我已经创建Certbot certonly选项,并将所有文件复制到cvm。

当您已经完成了全链文件时,它不需要将链文件合并在一起。
在我这边,它与我从letsencrypt获得的标准文件一起工作。

用于CARERTICETE-PATH全文.PEM-FILE!

就这样


迎接

Omero.

UserLevel 2.
徽章 +5

我只是得到一个错误消息:

错误:写数据的问题,类java.util。LinkedList ContentType:多部分/格式

尝试使用NCLI SSL证书导入加载Certs时...

UserLevel 2.
徽章 +5

在数据/日志/ prism_gateway.log中存在此错误

INFO 2020-10-21 23:47:42,326z http-nio-0.0.0.0-9081-ex-2 [] commands.keys.addpemkey.checkcertpurpose:'ssl server'的目的值是'是'。
错误2020-10-21 23:47:42,356z http-nio-0.0.0.0-9081-ex-2 [] prism.aop.requestinterceptor.invoke:235从keyAdministration.importfiles投掷异常
com.nutanix.prism.exception.keys.key.keyAdministrationException:com.nutanix.util.base.validationException:导入文件验证失败。请上传有效的CA证书/链文件并选择相关的关键类型。
在com.nutanix.prism.services.keys.keyadministrationimpl.importfiles(keyadministrationimpl.java:111)

但这与RSA_2048密钥类型选择以及有效的RSA 2048证书和CA链。

UserLevel 2.
徽章 +5

测试后

UserLevel 2.
徽章 +5

好的,我至少部分解决了这一点。

我使用https://github.com/srvrco/getssl项目生成证书,它正在创建一个“全链”。其中只包含服务器证书和中间CA证书,但不包含根CA证书。pem文件,而我的中间CA签署了一个不同的证书。

我还没有成功用ncli替换certs。

UserLevel 2.
徽章 +5

NCLI似乎在CE.2020.09.16版本中断,我一直拿到错误多于

但是,使用未记录的V1 API调用棱镜使用,我已经能够使用卷曲安装证书如下

$ curl -User'admin:password'\
- f caChain = @fullchain。crt \
-f cert=@server.crt \
-f key =@server.key \
-f keytype = rsa_2048 \
- k https://127.0.0.1:9440 PrismGateway /服务/ rest / v1 /键/ pem /导入

HullChain.crt在PEM格式中包含中间和根CA证书。

徽章 +1

你曾经得到进一步,有同样的问题与LetsEncrypt管理使用您的curl上面,并安装,然而似乎没有“发布”

徽章 +1

秘籍……重启cvm(在我的例子中是单节点)…工作! !

Baidu