提问人:pepoluan 提问时间:11/16/2023 更新时间:11/16/2023 访问量:10
在 Python 中模拟 openssl s_client验证工具
Emulate openssl s_client verify facility in Python
问:
我想做类似的事情:
openssl s_client -verify_return_error -quiet -strict -verifyCAfile CA_file.crt server.name:4443
安装的证书是一个部分链,包含(按顺序):服务器的证书和 Intermediate1 证书。server.name
例如,运行上述命令将返回如下内容:
### Successful chain traversal
depth=2 C = ..., CN = ROOT, emailAddress = ...
verify return:1
depth=1 C = ..., CN = Intermediate1, emailAddress = ...
verify return:1
depth=0 C = ..., CN = server.name
verify return:1
### UNsuccessful chain traversal (e.g., wrong CA_file)
depth=1 C = ..., CN = Intermediate1, emailAddress = ...
verify error:num=20:unable to get local issuer certificate
我如何使用 Python 做到这一点?
我尝试阅读pyOpenSSL
的文档,但它真的是......稀疏。没有代码示例,没有关于如何做事的指南。
笔记:
- 我只需要一个布尔值返回; 如果证书链有效,如果证书链无效(任何原因,无论是错误的本地CA_file还是服务器端安装的错误链)
true
false
- 没有必要使用 pyOpenSSL;任何其他产生我想要的布尔结果的方法都可以。
答: 暂无答案
评论