Bitbucket似乎已经阻止了TLS 1.0和1.1。
我正在使用MercurialEclipse(hg)2.2插件在Mac OSx 10.12.6上的Eclipse中工作。
每当我尝试从远程Bitbucket存储库中提取信息时,我都会收到SSL握手错误。
我尝试更新插件并进行全新安装,但仍然出现相同的错误。
然后我尝试从Mercurial网站下载并安装最新的Mercurial软件包(4.8)。
执行此操作后,错误更改为:
警告:使用旧版安全技术连接到bitbucket.org (TLS 1.0);参见https://mercurial-scm.org/wiki/SecureConnections 更多信息中止:错误:[SSL:WRONG_VERSION_NUMBER]版本错误 号码(_ssl.c:590)
我尝试下载最新的Python(3.7.1和2.7.15),因为我在Mercurial的网站上看到链接,警告说它与Python的OpenSSL实现有关,但仍然出现相同的错误。
关于如何通过TLS 1.2使Mercurial与Bitbucket一起使用的任何建议?
答案 0 :(得分:1)
我使用的是Mac OS X 10.12“ Sierra”。我更新到10.13“ High Sierra”,它解决了这个问题。
值得注意的是...现在运行openssl version
时,我得到:LibreSSL 2.2.7
。在10.12之前,我得到了:OpenSSL 0.9.8zh 14 Jan 2016
。
答案 1 :(得分:0)
由于您遇到了同样的问题,因此我在VirtualMachine中完成了上述解决方案,尽管该问题得以解决,但是在我的实时服务器中却没有解决。您剩下的唯一选择是更改存储库中的hgrc文件,即“ reponame / .hg / hgrc”,并将默认路径更新为“ ssh://hg@bitbucket.org/'reponame'”,而不是“ https:@ bitbucket.org/'reponame'“并不是一个很好的解决方案,但要等到Bitbucket支持团队提出一些解决方案后才能发挥作用。
这样做解决了我的问题。
答案 2 :(得分:0)
我尝试了 [ui] tls = False
这对我有用,尽管我不明白为什么。 bitbucket仅使用tls 1.2,这似乎将其关闭。有谁知道为什么这样做?只是在烦我。
答案 3 :(得分:-1)
只是一个建议,您可以创建一个“ hgrc”文件并添加
[ui] tls = False
并尝试一下。