Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ssl 如何避免';tlsv1警报未知ca';libmproxy中的错误?_Ssl_Tcp_Certificate_Telnetlib_Libmproxy - Fatal编程技术网

Ssl 如何避免';tlsv1警报未知ca';libmproxy中的错误?

Ssl 如何避免';tlsv1警报未知ca';libmproxy中的错误?,ssl,tcp,certificate,telnetlib,libmproxy,Ssl,Tcp,Certificate,Telnetlib,Libmproxy,当前使用,后者反过来使用,向HTTPS网页发出请求。但是,出现以下错误: Error: [('SSL routines', 'SSL3_READ_BYTES', 'tlsv1 alert unknown ca')] 我认为这与无法验证为页面使用的证书提供凭证的CA的身份有关。我认为应该有一个设置,我可以打开(或关闭)来绕过验证-我对验证数字签名者的身份不感兴趣 我认为一种可能的、丑陋的解决方案可能是修补代码以捕获异常并忽略它,但我更希望有一种更干净、更受支持的方法来实现它 避免/解决此问题的好

当前使用,后者反过来使用,向HTTPS网页发出请求。但是,出现以下错误:

Error: [('SSL routines', 'SSL3_READ_BYTES', 'tlsv1 alert unknown ca')]
我认为这与无法验证为页面使用的证书提供凭证的CA的身份有关。我认为应该有一个设置,我可以打开(或关闭)来绕过验证-我对验证数字签名者的身份不感兴趣

我认为一种可能的、丑陋的解决方案可能是修补代码以捕获异常并忽略它,但我更希望有一种更干净、更受支持的方法来实现它

避免/解决此问题的好方法是什么


非常感谢

当提供给用户的proxySG证书未经可信CA签名时,会发生这种情况


我也有这个错误,我通过组策略将CA(用于ssl代理的CA)推送到实际的浏览器来修复它。

如果您有Windows客户端,您似乎可以使用certutil

对于Linux客户端,您可以使用:

sudo mkdir /etc/share/certificates/extra && cp cacert.crt /user/share/certficates/extra/cacert.crt
sudo dpkg-reconfigure ca-certificates
对于Mac客户端:

sudo security add-trusted-cert -d -r trustRoot -k \
"/Library/Keychains/System.keychain" \
"/private/tmp/certs/certname.cer"
(这个答案来自)


此外,阅读libmproxy的网页,它似乎能够加载自定义证书。如果您已经拥有客户信任的内部证书颁发机构,您可能只想从那里生成证书。

您是否知道绕过验证会使连接容易受到潜在的MITM攻击?是的。这是一个固有的不安全环境,进入潜在的不安全状态是“可以的”。不过,感谢大家的提醒:)我试图深入研究这个问题,但这并不是一个真正的“python”问题——答案将是特定于底层库的。看起来libmproxy使用的是netlib,netlib使用的是openssl库,所以我必须先看看openssl库,找出如何在那里关闭验证,然后看看netlib是否有办法激活它,然后看看libmproxy是否有激活的方法,让netlib执行使openssl无法验证证书的操作。我尝试了以下示例:并成功加载了一个没有可信CA的网站。你可以发布一些关于如何使用lib的代码吗?还是导致问题的示例链接?你有客户端ca文件吗?你看过配置选项了吗?也许可以尝试设置no\u上游\u cert=True?默认设置:Config(certfile=None,cacert=None,clientcerts=None,no\u上游\u证书=False,body\u size\u limit=None,reverse\u proxy=None,forward\u proxy=None,transparent\u proxy=None,authenticator=None)听起来可能值得研究。你能详细说明一下怎么做以及这些术语的含义吗?