python - 从套接字中获取服务器名称

标签 python sockets ssl

我尝试编辑可用于嗅探 SSL 流量的 mallory 代理。但是,使用连接到服务器的服务器存在问题,例如CloudFlare因为拿不到真正的证书,只能从前面的CloudFlare服务器上拿到证书。

因此,我想使用 SSLContext.wrap_socket() 中的 server_hostname 选项。但是为此,我需要从 Python 套接字对象中获取目标服务器的名称。然而,我知道唯一可以检索它的函数是 getpeername() 但这只返回目的地的 ip。有人也知道从套接字获取服务器名称的方法吗?

最佳答案

dhke 在评论中建议的解决方案,调用 set_servername_callback(),确实是我搜索的解决方案,可以看到 here .然而,在 mallory 中使用它是行不通的,但这是另一个话题。

关于python - 从套接字中获取服务器名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28829268/

相关文章:

java - 无法使用 Spring JDBC 通过 SSL 连接到 SQL Server

python - 断言错误 : 200 ! = 403

c# - SocketAsyncEventArgs是客户端应用程序的不错选择吗?

node.js - 发回响应时发生 Sails 错误

sockets - 选择c : wfds is always turned on,导致 block

linux - 在linux中预加载动态加载的库

python - "pass"与 Python 中的 "return None"相同吗?

python - re.match 一组字符串中的一个,结果作为变量

python - 如何解决这个不断变化的数据框问题

ssl - keytool -list -v 和 keytool -list 返回不同的输出