首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >自签名根证书无法用openssl验证--0深度查找错误18

自签名根证书无法用openssl验证--0深度查找错误18
EN

Security用户
提问于 2017-09-01 07:34:34
回答 1查看 16.9K关注 0票数 1

我只是想创建一个自我签名的证书。我创建了一个根证书,我用它创建了

  • 服务器密钥+证书和
  • 客户密钥+证书

连接到安装了服务器密钥+服务器证书的TLS服务器时,客户端使用消息Peer's Certificate issuer is not recognized失败。

要在验证根证书本身时进行调试,我将获得error 18 at 0 depth lookup

http://gagravarr.org/writing/openssl-certs/errors.shtml提到"#2可能是因为证书是自签名的,而不是可信的“,但不确定如何验证根证书。

下面是我创建根证书的配置,

root-ca.config

代码语言:javascript
运行
复制
[req]
default_bits = 2048
prompt = no
default_md = sha256
distinguished_name = dn

[ dn ]
C=US
ST=Seattle
L=Seattle
O=Duwamish
OU=SC
emailAddress=some.email@gmail.com
CN =localhost

证书

代码语言:javascript
运行
复制
openssl req -newkey rsa:1024 -sha1 -keyout rootkey.pem -out rootreq.pem -config root-ca.conf
openssl x509 -req -in rootreq.pem -sha1 -signkey rootkey.pem -out rootcert.pem

然后,我将根证书复制到/etc/pki/tls/certs/ (Redhat os)。

代码语言:javascript
运行
复制
cp rootcert.pem /etc/pki/tls/certs/
sudo update-ca-trust extract

[root@ip-172-18-20-233 conf3]# ll /etc/pki/tls/certs
total 24
lrwxrwxrwx 1 root     root       49 Apr 17 07:59 ca-bundle.crt -> /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem
lrwxrwxrwx 1 root     root       55 Apr 17 07:59 ca-bundle.trust.crt -> /etc/pki/ca-trust/extracted/openssl/ca-bundle.trust.crt
-rwxr-xr-x 1 root     root      610 Feb 28  2017 make-dummy-cert
-rw-r--r-- 1 root     root     2388 Feb 28  2017 Makefile
-rwxr-xr-x 1 root     root      829 Feb 28  2017 renew-dummy-cert
-rw-r--r-- 1 ec2-user ec2-user 1688 Aug 31 22:58 restapi-root-ca.cert
-rw-r--r-- 1 root     root     1342 Sep  1 05:58 restapi-server.cert
-rw-r--r-- 1 root     root      944 Sep  1 08:00 rootcert.pem

验证

代码语言:javascript
运行
复制
openssl verify rootcert.pem 
rootcert.pem: /C=US/ST=Seattle/L=Seattle/O=Duwamish/OU=SC/emailAddress=some.email@gmail.com/CN=localhost
error 18 at 0 depth lookup:self signed certificate
OK
EN

回答 1

Security用户

回答已采纳

发布于 2017-09-01 08:42:43

我在回答我自己的101条问题。我必须安装root cert才能信任它。

在将根证书复制到/etc/pki/tls/certs之后,我正在更新redhat ca,但不知怎么的,它没有被重新加载。最后,我手动地将PEM复制到/etc/pki/tls/certs/ca-bundle.crt

票数 1
EN
页面原文内容由Security提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://security.stackexchange.com/questions/168606

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档