【发布时间】:2014-06-24 18:36:12
【问题描述】:
我正在尝试设置带有证书验证的 stunnel。我已将verify = 1 放入stunnel.conf。
我为 STunnel 服务器和客户端生成了证书并使用 CA 签名(CA 实验室设置):
openssl req -out stunnel.csr -new -newkey rsa:2048 -nodes -keyout stunnel.key
scp stunnel.csr root@<CA IP Address>:/etc/pki/CA/csr/
openssl ca -extensions v3_ca -days 3650 -in csr/stunnel.csr -out certs/stunnel.pem
cat stunnel.key >> stunnel.pem
但是当我使用这个证书时出现错误:
2014.05.07 17:01:56 LOG4[8343:140373923505920]: VERIFY ERROR: depth=1, error=unable to get issuer certificate: /C=US/ST=California/O=Org/OU=OrgUnit TLM/CN=CAHost
2014.05.07 17:01:56 LOG3[8343:140373923505920]: SSL_accept: 140890B2: error:140890B2:SSL routines:SSL3_GET_CLIENT_CERTIFICATE:no certificate returned
2014.05.07 17:01:56 LOG5[8343:140373923505920]: Connection reset: 0 bytes sent to SSL, 0 bytes sent to socket
这里出了什么问题?
【问题讨论】:
-
unable to get issuer certificate表示某些东西不信任 CA。我不知道是什么生成了日志文件,所以我不清楚是什么不信任您的私有 CA。 -
您可以使用
openssl s_client -connect <server>:<port> -CAfile <your CA>测试您的新证书。如果它以Verify OK (0)结束,那么一切正常。