我只是想创建一个自我签名的证书。我创建了一个根证书,我用它创建了
连接到安装了服务器密钥+服务器证书的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
[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
证书
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)。
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
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
发布于 2017-09-01 08:42:43
我在回答我自己的101条问题。我必须安装root cert才能信任它。
在将根证书复制到/etc/pki/tls/certs
之后,我正在更新redhat ca,但不知怎么的,它没有被重新加载。最后,我手动地将PEM复制到/etc/pki/tls/certs/ca-bundle.crt
。
https://security.stackexchange.com/questions/168606
复制相似问题