2016-06-09 60 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