【问题标题】:Python WSS: chrome not recognizing auto validated certificatePython WSS:chrome无法识别自动验证的证书
【发布时间】:2017-07-04 01:41:53
【问题描述】:

我有一个 web 应用程序(客户端)和一个守护程序(服务器)在我的本地计算机上运行,​​它们共享消息。不使用安全套接字时一切正常。

我现在正在尝试实现 WSS,但 chrome 继续拒绝我使用 openssl 生成的证书:

webSocket connection to 'wss://localhost:8190/Action
failed: Error in connection establishment: net::ERR_CONNECTION_CLOSED

到目前为止我已经尝试过:

  • 我尝试在SystemLogin 中添加我的.crt 文件到Apple KeyChain
  • 我已尝试生成新证书并再次执行所有操作。

对于 websockets,我使用 this library,这就是我打开套接字的方式:

ssl_context = ssl.create_default_context(cafile='/localhost.crt')
st_server = websockets.serve(self.__on_receive, 'localhost', '8190',
                                 ssl=ssl_context)

任何帮助,参考相关文档将不胜感激。谢谢

【问题讨论】:

    标签: python macos sockets ssl websocket


    【解决方案1】:

    解决了。我已将上面的代码更改为:

    ssl_context = ssl.create_default_context(ssl.Purpose.CLIENT_AUTH)
    ssl_context.load_cert_chain(os.path.join('/', "localhost.crt"),
                                os.path.join('/', "localhost.key"))
    st_server = websockets.serve(self.__on_receive, 'localhost', '8190',
                                         ssl=ssl_context)
    

    基本上我没有正确加载证书。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-06-15
      • 2016-02-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多