快速且小型的 C++ https 代理

快速且小型的 C++ https 代理

我正在寻找一个小型、快速且可靠的 https 代理,我可以扩展它来执行以下操作:

  1. 查找 https 握手请求。
  2. 针对所请求的主机名运行正则表达式。
  3. 如果表达式与主机名匹配,则不发送请求,而是通过 302 重定向响应到其他站点。

所以,我想我对此有以下问题:

  1. 这可能吗? (我很确定握手请求没有加密,我知道我可以做一些模式匹配,真正的问题是......我是否能够向客户端发送一个假的 302 重定向,而不会让客户端抱怨没有完成握手?)

  2. 如果可能的话,是否有一个 Linux 应用程序可以完成部分或全部功能? (我找到了这个:http://www.kubat.nl/pages/microproxy)我正在考虑尝试将剩余的功能构建到其中,但如果其他东西已经做到了,我不想尝试。

  3. 您对我可以将其构建到的其他 C++ Linux 代理有什么建议吗?

预先感谢您的反馈。

电动汽车

答案1

3:您对我可以将其构建到的其他 C++ Linux 代理有什么建议吗?

乌贼是一个快速的开源代理,您可以随心所欲地扩展它

答案2

这也是不可能的,除非“URL”指的是“主机名”。这服务器名称指示扩展允许客户端指示它尝试连接的主机名。现在很多浏览器支持SNI。但完整的 URL 直到握手完成后才会传输。

https://www.example.com/所以你可以区分和之间的差异https://other.example.com/,但不能区分https://www.example.com/one和 之间的差异https://www.example.com/another

也许如果你准确地解释了为什么你认为你需要这样做,有人可以想出一个解决方案。

相关内容