2015-04-28 51 views
1

我試圖讓Firefox每晚使用安全的HTTP/2代理,但它拒絕接受自簽名證書。爲本地HTTP/2代理生成證書

該代理由作爲HTTP/2前端的nghttp2和作爲後端的簡單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指定的代理。

我創建server.pem使用

openssl req -new -x509 -keyout server.pem -out server.pem -days 365 -nodes 

當我嘗試通過代理裝載一個通用的網站像http://www.something.com本地主機,火狐帶來了「此連接不受信任」的警告。但是,如果我告訴它添加和存儲異常,它只會再次提示警告。從我所知道的情況來看,它永遠不會超過Twisted代理的nghttp2前端。

我應該做一些不同的安全代理認證?除了nghttp2之外,我找不到其他網站,「請注意,Firefox每晚和Chromium都需要有效的安全代理證書。」

+0

它似乎與Chrome一起工作,所以我認爲這是Firefox的一個問題。 – Ric

+0

看起來我很快就Chrome談到了。 Chrome當前錯誤地實現了HTTP/2 CONNECT:https://code.google.com/p/chromium/issues/detail?id=433784 – Ric

回答

1

帕特里克·麥克馬納斯回答幾乎正是這種在Firefox bugzilla a while ago - 而這樣做的原因是,仍有這種缺乏UI在Firefox中:

您可以爲代理的情況下做豆腐例外,但你必須稍微改變一下 。

  1. 在Firefox中關閉代理使用。

  2. https://PROXYNAME:PROXYPORT/在地址欄中(使用相同的名稱和端口號爲您在PAC已配置的 - 你不能使用 IP地址或默認端口..你不能使用IP地址,因爲他們 無法通過PKI驗證,並且每個端口都存儲異常

  3. 覆蓋cert警告和perm。存儲異常您獲得的響應將毫無意義,因爲您現在正在尋址 代理端口,就好像它是端點
  4. 將代理重新打開並使用它