【发布时间】:2015-07-08 00:25:45
【问题描述】:
我试图让 Firefox 每晚使用安全的 HTTP/2 代理,但它拒绝接受自签名证书。
代理由 nghttp2 作为 HTTP/2 前端和一个简单的 Twisted 代理作为后端组成。 Twisted 代码来自https://wiki.python.org/moin/Twisted-Examples,它自己作为 HTTP/1.1 代理工作。 nghttp2 使用
调用nghttpx -s -flocalhost,8443 -b127.0.0.1,8080 server.pem server.pem -L INFO
Firefox 将其用作https://nghttp2.org/documentation/nghttpx-howto.html#http-2-proxy-mode 中指定的代理。
我使用
为 localhost 创建了 server.pemopenssl req -new -x509 -keyout server.pem -out server.pem -days 365 -nodes
当我尝试通过代理加载像 http://www.something.com 这样的通用网站时,Firefox 会显示“此连接不受信任”警告。但是,如果我告诉它添加并存储异常,它只会再次显示警告。据我所知,它永远不会通过 nghttp2 前端到达 Twisted 代理。
我应该为安全代理证书做一些不同的事情吗?除了 nghttp2 声明之外,我在网上找不到很多东西,“请注意,Firefox nightly 和 Chromium 都需要有效的证书才能安全代理。”
【问题讨论】:
-
它似乎与 Chrome 一起工作,所以我假设这是 Firefox 的问题。
-
看来我谈论 Chrome 的时间太早了。 Chrome 当前错误地实现了 HTTP/2 CONNECT:code.google.com/p/chromium/issues/detail?id=433784
标签: firefox proxy ssl-certificate http2 nghttp2