我试图让 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.pem
openssl req -new -x509 -keyout server.pem -out server.pem -days 365 -nodes
当我尝试通过代理加载像http://www.something.com这样的通用网站时,Firefox 会显示“此连接不受信任”警告。但是,如果我告诉它添加并存储异常,它只会再次显示警告。据我所知,它永远不会通过 nghttp2 前端到达 Twisted 代理。
我应该为安全代理认证做一些不同的事情吗?除了 nghttp2 说明“请注意,Firefox nightly 和 Chromium 都需要有效的安全代理证书”之外,我在网上找不到太多信息。