由于TLS,Mercurial在Bitbucket上出现SSL错误

时间:2018-12-04 16:05:08

标签: mercurial bitbucket mercurialeclipse

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一起使用的任何建议?

4 个答案:

答案 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

并尝试一下。