gpt4 book ai didi

python-2.7 - 为 ssl 包装的套接字调用连接方法时出现一些错误

转载 作者:太空宇宙 更新时间:2023-11-03 14:10:05 24 4
gpt4 key购买 nike

我的 ssl 服务器和客户端代码在 Windows 机器上运行良好。但是,当我尝试在 Ubuntu 机器上执行相同的代码时,我在客户端执行以下行代码时遇到了一些错误:

sslconnection.connect((host,port))

所有代码文件和证书文件都存在于同一个文件夹中。

File "clientsideCode.py", line 24, in <module>
sslConnection.connect((host,port))
File "/usr/lib/python2.7/ssl.py", line 433, in connect
self._real_connect(addr, False)
File "/usr/lib/python2.7/ssl.py", line 414, in _real_connect
self.ca_certs, self.ciphers)
ssl.SSLError: [Errno 0] _ssl.c:344: error:00000000:lib(0):func(0):reason(0)

我用来用 ssl 包装套接字的代码:

sslconnection = ssl.wrap_socket(clientsocket,cert_reqs=ssl.CERT_REQUIRED,ca_certs="server.crt")

最佳答案

既然问题现在已经解决了,这里给任何遇到这类问题的人写一篇简短的文章:

... ssl.wrap_socket(clientsocket,cert_reqs=ssl.CERT_REQUIRED...

这导致了最初的问题,因为 CERT_REQUIRED 是服务器端的一个选项(要求客户端证书),只有在客户端错误使用时才会导致问题。

但是在解决这个问题之后又出现了另一个问题:

... EOF occurred in violation of protocol

这意味着服务器在握手期间关闭了连接。当协议(protocol)或密码不匹配或服务器设置错误时,通常会出现此错误。通过查看服务器端的错误消息通常可以获得更多信息。这里显然是后一种情况,即错误的设置:

There was problem with certificate or key. However, I copied again from windows machine to linux then everything worked smoothly.

关于python-2.7 - 为 ssl 包装的套接字调用连接方法时出现一些错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32679645/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com