如何防止由于SSL错误而终止

用户名

我有这个主要的代码,实际上是http网络服务器,可以正常工作,但是由于SSL错误而终止(请向下滚动)

class ThreadingSimpleServer(ThreadingMixIn, HTTPServer):
    pass


def run():
    port =80
    if USE_HTTPS:
        port=443
    server = ThreadingSimpleServer(('0.0.0.0', port), PostHandler)
    if USE_HTTPS:
        import ssl
        server.socket = ssl.wrap_socket(server.socket, keyfile='./ssl/key.pem', certfile='./ssl/public.pem', server_side=True)
    server.serve_forever()

错误

> File "/usr/lib/python3.6/socketserver.py", line 654, in
> process_request_thread
>     self.finish_request(request, client_address)   File "/usr/lib/python3.6/socketserver.py", line 364, in finish_request
>     self.RequestHandlerClass(request, client_address, self)   File "/usr/lib/python3.6/socketserver.py", line 724, in __init__
>     self.handle()   File "/usr/lib/python3.6/http/server.py", line 418, in handle
>     self.handle_one_request()   File "/usr/lib/python3.6/http/server.py", line 386, in handle_one_request
>     self.raw_requestline = self.rfile.readline(65537)   File "/usr/lib/python3.6/socket.py", line 586, in readinto
>     return self._sock.recv_into(b)   File "/usr/lib/python3.6/ssl.py", line 1012, in recv_into
>     return self.read(nbytes, buffer)   File "/usr/lib/python3.6/ssl.py", line 874, in read
>     return self._sslobj.read(len, buffer)   File "/usr/lib/python3.6/ssl.py", line 631, in read
>     v = self._sslobj.read(len, buffer) ssl.SSLError: [SSL: TLSV1_ALERT_UNKNOWN_CA] tlsv1 alert unknown ca (_ssl.c:2309)

我需要两件事:

  • 可以忽略任何SSL证书错误(例如:sslopt={"cert_reqs": ssl.CERT_NONE}但是在通过时不起作用run_forever
  • 通过实现run_forever我找不到的示例代码来捕获此SSL错误

在执行HTTPS多线程服务器实现时,我发现与其他语言相比缺少Python文档。工作实例很难找到。

斯蒂芬·乌尔里希(Steffen Ullrich)

可以忽略任何SSL证书错误(例如: sslopt={"cert_reqs": ssl.CERT_NONE}

这是客户端发送的TLS警报,不接受服务器证书。您无法在服务器端采取任何措施来防止此错误,除非提供了客户端可以接受的证书。这与多线程或Python无关,但仅与客户端不信任的证书有关。

通过实现run_forever来捕获此SSL错误...

根据堆栈跟踪,将错误抛出内部handle(),您可以覆盖该错误以捕获该错误。有关如何执行此操作的示例,请参见此处此处

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

由于内存错误而终止的应用

来自分类Dev

如何防止服务因进程终止而被终止?

来自分类Dev

应用程序崩溃并显示消息“由于内存错误而终止”

来自分类Dev

GPUImage和GPUImageView:应用由于内存错误而终止

来自分类Dev

如果bash脚本由于set -e而终止,则显示错误消息

来自分类Dev

如何使用OpenSSL在Swift中防止由于错误输入d2i_X509_REQ_bio而导致致命错误

来自分类Dev

如何检查,超过了哪个限制?(由于ulimit终止了进程。)

来自分类Dev

由于内存压力而终止

来自分类Dev

如何防止通过Auto Scaling终止EC2实例?

来自分类Dev

如何防止Chrome在最后打开的标签页关闭时终止?

来自分类Dev

我如何防止脚本在shell退出时终止?

来自分类Dev

演员终止的原因或如何处理错误

来自分类Dev

由于SSL证书错误,pip无法获取URL

来自分类Dev

当C ++动态链接函数引发终止异常时,如何防止Octave终止?

来自分类Dev

SSL证书如何防止黑客克隆

来自分类Dev

防止程序终止的线程

来自分类Dev

如何防止由于标题中添加索引而导致ggplot变小?

来自分类Dev

如何防止由于填充而导致过多的图像链接区域

来自分类Dev

如何防止“不响应”错误?

来自分类Dev

如何防止更新错误数据?

来自分类Dev

由于未捕获的异常“ NSRangeException范围或索引超出范围”,导致iOS错误终止应用

来自分类Dev

应用引擎错误。进程由于超出配额而终止。配额页面不显示任何超出的配额

来自分类Dev

为什么在hackerrank上我的代码会收到“由于超时而终止”错误?

来自分类Dev

为什么我在这里收到“由于超时而终止”错误?

来自分类Dev

如何在istio中的入口网关处终止ssl?

来自分类Dev

如何避免由于舍入错误而导致的NaN

来自分类Dev

Lighttpd 防止在删除的子域上出现 SSL 错误

来自分类Dev

NGINX 上的 SSL 终止

来自分类Dev

除了eval之外,还有什么方法可以防止我的perl脚本因错误而终止

Related 相关文章

  1. 1

    由于内存错误而终止的应用

  2. 2

    如何防止服务因进程终止而被终止?

  3. 3

    应用程序崩溃并显示消息“由于内存错误而终止”

  4. 4

    GPUImage和GPUImageView:应用由于内存错误而终止

  5. 5

    如果bash脚本由于set -e而终止,则显示错误消息

  6. 6

    如何使用OpenSSL在Swift中防止由于错误输入d2i_X509_REQ_bio而导致致命错误

  7. 7

    如何检查,超过了哪个限制?(由于ulimit终止了进程。)

  8. 8

    由于内存压力而终止

  9. 9

    如何防止通过Auto Scaling终止EC2实例?

  10. 10

    如何防止Chrome在最后打开的标签页关闭时终止?

  11. 11

    我如何防止脚本在shell退出时终止?

  12. 12

    演员终止的原因或如何处理错误

  13. 13

    由于SSL证书错误,pip无法获取URL

  14. 14

    当C ++动态链接函数引发终止异常时,如何防止Octave终止?

  15. 15

    SSL证书如何防止黑客克隆

  16. 16

    防止程序终止的线程

  17. 17

    如何防止由于标题中添加索引而导致ggplot变小?

  18. 18

    如何防止由于填充而导致过多的图像链接区域

  19. 19

    如何防止“不响应”错误?

  20. 20

    如何防止更新错误数据?

  21. 21

    由于未捕获的异常“ NSRangeException范围或索引超出范围”,导致iOS错误终止应用

  22. 22

    应用引擎错误。进程由于超出配额而终止。配额页面不显示任何超出的配额

  23. 23

    为什么在hackerrank上我的代码会收到“由于超时而终止”错误?

  24. 24

    为什么我在这里收到“由于超时而终止”错误?

  25. 25

    如何在istio中的入口网关处终止ssl?

  26. 26

    如何避免由于舍入错误而导致的NaN

  27. 27

    Lighttpd 防止在删除的子域上出现 SSL 错误

  28. 28

    NGINX 上的 SSL 终止

  29. 29

    除了eval之外,还有什么方法可以防止我的perl脚本因错误而终止

热门标签

归档