用于透明MITM SSL代理的SSL证书

我想用privoxy或squidbuild立一个透明的SSL公司代理

我计划中的一个障碍是理解需要什么样的SSL证书。 我知道我可以得到一个多域/通配符SSL证书; 但是,这只是为了涵盖单个组织的子域。 似乎我需要一个通配证书,为现在和将来在这个星球上的每个TLD。

由于安全检查失败,我不希望用户通过代理时popup安全警告; 如果可能的话,我还想避免在浏览器中安装手动CA信任。 但是,如果商业解决scheme不可行,自签名证书有哪些解决scheme?

问题:

  1. 这可能吗?
  2. 如果所有的限制都不能达到,我能做的最好的是什么?
  3. IE,Firefox,Chrome在混合的windows / linux环境下成功的最低成本path是什么?

有两种MITMing SSLstream量的方法:

  • 你得到一个可信的SSL证书,通配符( subjectAltName:*subjectAltName:*.*等等); 要么
  • 您将获得一个可信的CA或中间证书,并“即时”创build可信证书以向客户呈现。

前者更容易做到,但后者更好,如果你不想让自己明白自己在做什么,因为证书对于临时观察者来说看起来更“合法”。

真正的诀窍是获得这些超特殊证书之一。 合法组织代理的更简单的方法是生成您自己的CA签名的证书,并将该CA证书分发到组织控制中的每个设备。 这种方法的挑战和局限性应该是相当明显的。

一种更加奇怪的做事方式通常只对政府和组织大到可以颠覆一个CA(这种或那种方式) – 在这种情况下,你得到一个现有的合法CA,其CA证书已经接近普遍值得信赖的,给你一个上面的狡猾的证书,然后你快乐的方式。

后一种方法不是理论 – 压迫政权的政府有很多案例获得这种证书来颠覆其境内的SSL连接,并监视通过它们的堵塞点的交通。 如果这听起来像SSL安全模型是完全破碎和瑕疵,那么你有正确的想法。