TLS
我有一个使用(自签名)证书运行的服务的 TCP 端点。为了测试这个端点,我使用openssl s_client -connect service.domain.com:5050
它,它不打印CONNECTED(00000006)
任何其他内容。
我有用于此端点的自签名证书的证书和密钥。如何通过openssl
上述命令使用密钥?
如果这不可能的话openssl
,我还可以用什么其他方式来测试呢?
答案1
man s_client
揭示了:
-cert certname
The certificate to use, if one is requested by the server. The default is not to use a certificate.
-key keyfile
The private key to use. If not specified then the certificate file will be used.
-keyform
如果有必要还请查看-certform
。
此外,现在总是使用-servername
(启用 SNI)是有意义的。
答案2
我昨天遇到了类似的问题。该端点是 Microsoft IIS 8.0 服务器,无法使用现代 TLS 1.2 和 1.3,并且s_client
在 CONNECTED(...) 之后立即停止。其他服务器仅不支持 TLS 1.3。所以,就我而言,-tls1
或-tls1_1
关键帮助s_client
。