2016-06-09 142 views
3

我試圖連接到想要進行一些TLS重新協商的服務器,但是當前的Go TLS客戶端不支持重新協商。有沒有辦法讓我不能重新談判?我已經嘗試將最小/最大版本設置爲TLS 1.2並將PreferServerCipherSuites設置爲true,但仍然沒有運氣。如何防止來自TLS重新協商的http客戶端?

謝謝。

+0

我相信規範說服務器可以隨時強制重新協商,所以你可能會倒黴。您可能需要聯繫運行您嘗試連接的服務器的人員,看看他們是否願意不要求。 – childofsoong

回答

2

的問題已經解決了這個issue這個commit但你必須等待進入1.7版本被釋放

0

感謝所有的回答,但它看起來像我搞砸了,阻止TLS條件語句從配置,所以我一直在嘗試沒有工作。 smh ...

我最終通過在提交中使用common.go版本來取代它,並使用go 1.6.2替換了原始版本,並重新構建了標準庫。因爲這不是我推薦的做法,所以我會留給讀者做一個練習。但是,它看起來像一切正常,所以希望1.7很快就會出來。

現在,我不記得現在,如果我得到這個工作,但如果其他人在同一條船,我相信你可以設置最小/最大TLS版本爲相同的版本,並將PreferServerCipherSuites設置爲true 。這可能有用,但請記住childofsoong的評論。

+0

我一直在git中使用Go 1.7已經有一段時間了,它的穩定性和速度更快,YMMV。 – OneOfOne