如何在OpenSSL中跳过域名验证?

时间:2013-02-20 19:23:51

标签: openssl

我在OpenSSL中使用服务器和客户端身份验证。

SSL_CTX_set_verify(ctx, SSL_VERIFY_PEER | SSL_VERIFY_FAIL_IF_NO_PEER_CERT, NULL);

但是客户端通常没有有效的域名,所以我想在验证过程中跳过域名检查。定制的验证回调函数可能会有所作为,但鉴于我对OpenSSL的了解有限,我会请求一些帮助。非常感谢。

1 个答案:

答案 0 :(得分:1)

  

如何在OpenSSL中跳过域名验证?

没有必要跳过它,因为它不是由当前的OpenSSL实现执行的。当前的实现包括0.9.8,1.0.0和1.0.1。

但是,根据OpenSSL Change Log,OpenSSL 1.0.2和1.1.0将包含主机名验证:

  

*)集成主机名,电子邮件地址和IP地址检查   证书        验证。支持检查opensl实用程序的新验证选项。        [史蒂夫汉森]

     

*)对主机名和电子邮件的修复和通配符匹配支持   检查        功能。添加手册页。        [Florian Weimer(红帽产品安全团队)]

     

*)用于检查主机名电子邮件或IP地址的新功能        证书。添加选项x509实用程序以打印检查结果        证书。        [史蒂夫汉森]

根据更改日志,有一个-verify_name选项,但我没有看到它的合并位置。 apps.c似乎响应-verify_hostname切换。但是s_client没有响应任何一个开关,因此不清楚如何为客户端实现或调用主机名检查。