【问题标题】:Ruby MITM proxyRuby MITM 代理
【发布时间】:2012-11-08 17:21:07
【问题描述】:

我正在寻找一些关于如何在 Ruby 中编写支持 HTTPS 的代理的示例。我有一个使用 Webricks HTTPProxyServer 实现的简单代理,但我注意到,HTTPS 流量只是隧道(应该如此;))。但是我想用VCR录制内容(关于我的问题VCRProxy: Record PhantomJS ajax calls with VCR inside Capybara),只要内容只是通过,VCR就无法录制。

所以我正在考虑将代理编写为中间人,即时生成 SSL 证书(我不关心证书错误,它只是用于测试),然后我就可以录制内容/稍后播放。

因此,如果有人有很好的入门资源、教程或要点,请告诉我。

PS:我已经看到了这个问题,但他们没有提供任何进一步的东西(它需要在 ruby​​ 中):

【问题讨论】:

    标签: ruby ssl https proxy man-in-the-middle


    【解决方案1】:

    一个老问题,但为了完整起见,这里有另一个答案。

    我在Ruby中实现了一个HTTP/HTTPS拦截代理,项目是hosted in github

    该项目是新项目,因此它(还)不像 Python 的 mitmproxy 那样成熟,但它支持 HTTPS 和即时生成证书。

    【讨论】:

      【解决方案2】:

      Python 中有一个出色的 MITM 代理,其名称恰如其分地命名为 mitmproxy。作者的 netlib 库做了技巧,mitmproxy 使用它。

      代码库并不大,鉴于您了解 Ruby,应该不难通过它。

      【讨论】:

      • 我已经看到了,但是我需要 ruby​​ 中的代理,因为我必须在 net::http 调用 VCR 来记录它周围包裹一个块。
      • 我建议您应该查看它以供参考,因为您的问题暗示您将在 Ruby 中实现一个。
      • 谢谢,我会看看这个,但我的 Python 不是很好 ;),所以当有人得到一个 ruby​​ 示例时,我会很高兴听到它
      猜你喜欢
      • 2013-09-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-12-29
      • 2014-02-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多