SSL_connect:与github.com:443相关的SSL_ERROR_SYSCALL

时间:2018-02-26 11:31:45

标签: git npm openssl homebrew

几天后我遇到了Mac OS High Sierra 10.13.3的问题: 当我运行git clone git clone github.com/xxx.git failed时 它打印:

  

LibreSSL SSL_connect:与github.com:443相关的SSL_ERROR_SYSCALL

npm i命令的相同问题 即使我尝试像这样安装brew:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

我也试过了alternative setup:同样的。

19 个答案:

答案 0 :(得分:10)

在使用wget ...时,我也遇到了类似的错误,并且在Internet上进行了许多不成功的搜索之后,我发现当主机名解析为IPv6地址时就会发生这种情况。我是通过在两台机器上比较wget ...的输出来发现这一点的,其中一台正在解析为IPv4并在那儿工作,另一台正在解析为IPv6并在那儿失败了。

因此,我的解决方案是在macOS High Sierra 10.13.6上运行 networksetup -setv6off Wi-Fi 。 (我在此page中发现了此命令)。

希望这对您有所帮助。

答案 1 :(得分:7)

此处的问题相同,原来是我配置错误的代理设置,以下是检查和删除它们的方法。

首先打开你的git配置文件。

xAxis.setGranularity(1f);

并查明是否设置了vi ~/.gitconfig [http]部分。

由于中国对Github的访问速度慢,我曾经为git设置代理,但是,最近我改变了我的本地代理端口,但是我忘记了我的git设置。

如果您的代理设置不正确并决定将其删除,只需执行:

[https]

事情会好起来的。

答案 2 :(得分:2)

由于您正在使用LibreSSL,请尝试使用curl而非安全传输重新安装OpenSSL

brew reinstall curl --with-openssl

以下是其他一些建议:

  • 如果以上操作无效,请检查brew options curl以显示install options specific to formula
  • 请确保您未使用http_proxy / https_proxy
  • 使用-vcurl进行更详细的输出。
  • 尝试在curl使用BSD /usr/bin/curl,运行which -a curl列出所有内容。
  • 确保您没有在防火墙中意外阻止curl(例如 Little Snitch )。
  • 或者使用wget

答案 3 :(得分:2)

我建议更新git。如果您下载了Option Explicit Sub ColorEmptyRows() Dim ColorRng As Range For lRow = LastRow To FirstRow Step -1 With .Cells(lRow, "AF") If IsNumeric(.Value) And Trim(.Value2) <> "" Then If Not ColorRng Is Nothing Then Set ColorRng = Application.Union(ColorRng, .Cells(lRow, "AF")) Else Set ColorRng = .Cells(lRow, "AF") End If End If End With Next lRow ' if the range has at least 1 cell, color the entire range at the same time If Not ColorRng Is Nothing Then ColorRng.EntireRow.Interior.Color = 5296274 End Sub ,请务必先卸载它。

答案 4 :(得分:2)

1)尝试创建一个新分支并进行推送。工作了几次,但再次遇到相同的错误。

2)只需在推送代码之前运行这两个语句。我所做的就是取消代理。

$ git config --global --unset http.proxy
$ git config --global --unset https.proxy

3)几周后再次面对该问题。我已经更新了自制软件,并且它已修复

答案 5 :(得分:1)

对我来说,问题似乎在于如何在本地计算机上设置用户。使用命令
 git push -u origin master
 导致错误。卸下开关-u以使
git push origin master
为我解决此问题。难以想象用户设置如何导致与LibreSSL相关的错误。

答案 6 :(得分:1)

来自https://github.com/Homebrew/brew/issues/4436#issuecomment-403194892

通过设置此env变量来解决此问题:

/// app.js
import React from 'react';
import DeckGL, {PolygonLayer} from 'deck.gl';
import {StaticMap} from 'react-map-gl';

// Set your mapbox access token here
const MAPBOX_ACCESS_TOKEN = 'pk.eyJ1IjoibWZvZ2xpbyIsImEiOiJjamt2N2Z2aWkwNXJxM3BxNXo4Mmt1a3MwIn0.IqS5iv1ZmLht4hm-N0cDYg';

// Initial viewport settings
const initialViewState = {
  longitude: -87.630259,
  latitude: 41.873400,
  zoom: 13,
  pitch: 35,
  bearing: 0
};

// Data to be used by the LineLayer
const data = [{sourcePosition: [-122.41669, 37.7853], targetPosition: [-122.41669, 37.781]}];

class Map extends React.Component {

  render() {
    const layers = [
    ];

    return (
      <DeckGL
        initialViewState={initialViewState}
        controller={true}
        layers={layers}
      >
        <StaticMap 
          mapboxApiAccessToken={MAPBOX_ACCESS_TOKEN} 
          />
      </DeckGL>
    );
  }
}

export default Map;

答案 7 :(得分:1)

我在使用带有代理的 git 时也遇到了这个问题,根据我的经验,有两种方法可以解决这个问题。我会推荐第二种方式。

  1. git config --global sslVerify false(相当于编辑 ~/.gitconfig 如下)
<块引用>
[http]
proxy = http://127.0.0.1:1234
sslVerify = false

  1. 用socks5代理替换http代理
<块引用>
[http]
    proxy = socks5h://127.0.0.1:4567

注意 socks5h:// 中的“h”表示在代理端使用远程 DNS 而不是本地 DNS,这通常比使用如果您的本地 DNS 混乱。

答案 8 :(得分:1)

对我来说,这是由于K8S入口中未启用SSL证书引起的。希望这对某人有帮助

答案 9 :(得分:0)

我遇到了同样的问题。这是我的做法

首先,删除与自制软件相关的所有本地文件,您之前的安装过程可能已损坏。

curl https://raw.githubusercontent.com/Homebrew/install/master/uninstall > uninstall_brew.rb
ruby uninstall_brew_rb

然后,如果您使用它,请在命令行中导出您的 VPN 代理。

最后,用

重新安装自制软件
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

答案 10 :(得分:0)

如果其他解决方案都无法解决您的问题,请尝试直接编辑 .gitconfig 文件。就我而言,我将 VPN 代理用于 HTTP、HTTPS、SOCK。我的本地代理端点是 127.0.0.1:4780

.gitconfig 文件

[user]
    name = xxx
    email = xxx@xxx.com
[remote "origin"]
    proxy = http://127.0.0.1:4780
[http]
    proxy = http://127.0.0.1:4780
[https]
    proxy = http://127.0.0.1:4780

请务必使用代理端点填写 [remote "origin"] 部分。

答案 11 :(得分:0)

我使用 ClashX 1.30.2,我可以在 Google Chrome 中访问 google.com。

遇到这个问题后,我点击了'Copy shell command'

Clash screenshot

然后我执行上面复制的命令行。

export https_proxy=http://127.0.0.1:7890 http_proxy=http://127.0.0.1:7890 all_proxy=socks5://127.0.0.1:7890

它解决了这个问题。


Before I encounted the issue.
➜  octopus brew services start jenkins-lts
==> Tapping homebrew/services
Cloning into '/usr/local/Homebrew/Library/Taps/homebrew/homebrew-services'...
fatal: unable to access 'https://github.com/Homebrew/homebrew-services/': LibreSSL SSL_connect: SSL_ERROR_SYSCALL in connection to github.com:443
Error: Failure while executing; `git clone https://github.com/Homebrew/homebrew-services /usr/local/Homebrew/Library/Taps/homebrew/homebrew-services --origin=origin` exited with 128.
Error: Failure while executing; `/usr/local/bin/brew tap homebrew/services` exited with 1.

设置代理后,我解决了这个问题。

➜  octopus export https_proxy=http://127.0.0.1:7890 http_proxy=http://127.0.0.1:7890 all_proxy=socks5://127.0.0.1:7890
➜  octopus brew services start jenkins-lts
==> Tapping homebrew/services
Cloning into '/usr/local/Homebrew/Library/Taps/homebrew/homebrew-services'...
remote: Enumerating objects: 1174, done.
remote: Counting objects: 100% (53/53), done.
remote: Compressing objects: 100% (43/43), done.
remote: Total 1174 (delta 19), reused 13 (delta 9), pack-reused 1121
Receiving objects: 100% (1174/1174), 342.45 KiB | 2.22 MiB/s, done.
Resolving deltas: 100% (496/496), done.
Tapped 1 command (41 files, 432.8KB).
==> Successfully started `jenkins-lts` (label: homebrew.mxcl.jenkins-lts)

答案 12 :(得分:0)

如果任何人在使用Visual Studio Code中的集成终端时遇到此问题,则很有可能会对其进行更新。重新启动Visual Studio Code,您可能会看到“新版本”选项卡,并且它应该都可以再次开始工作。

答案 13 :(得分:0)

我刚刚关闭了VPN,它解决了这个问题。

答案 14 :(得分:0)

我在尝试从企业存储库克隆时遇到了这种情况,只是重启终端即可为我解决。

答案 15 :(得分:0)

我有一个类似的问题,我只是发现就我而言,它可能是引起问题的防病毒软件。

在尝试从github.com提取一些数据时,有时会出现相同的错误。

我知道卡巴斯基正在拦截SSL连接以检查站点中的恶意内容,因此我决定将其禁用,但是我发现KAV已挂起并且没有真正响应,因此我只是关闭了卡巴斯基并尝试连接到github .com又来了!我能够成功连接到GitHub。

因此,在您的情况下,这可能是类似的问题。

答案 16 :(得分:0)

一个简单的重启为我修复了它。我不确定是什么问题,因为我使用了太多的软件,但是我感觉这是VPN软件,或者我实际上使笔记本电脑处于睡眠状态并且某些文件已损坏。我真的不知道,但是重新启动解决了这个问题。

答案 17 :(得分:0)

大家好,我找到了关于这个github问题的解决方案,它适用于我no longer able to use private ssh key

尝试按照以下步骤操作:

1 - 尽可能使用HTTPS。这将完全避免SSH密钥 2 - 手动将SSH密钥添加到正在运行的SSH代理。见manually generate ssh key
3 - 如果其他两个不起作用,请删除所有ssh密钥并生成一些新的密钥,这是我在几周问题后所做的事情。

希望它会帮助你..

答案 18 :(得分:-2)

KAV出现相同问题。重新启动它解决了pb。