Git pull / push-HTTPS에 액세스 할 수 없음, SSL 루틴이 다운 된 것 같습니다.


105

저는 매일 Git (및 GitHub)을 사용하고 있으며 모든 것이 정상적으로 작동하고 갑자기 Git 명령을 통해 원격 GitHub 저장소와 더 이상 통신 할 수 없습니다. "Git pull"을 시도하면 다음과 같은 오류가 발생합니다.

치명적 : ' https://github.com/snahrvar/eatibl.git/ ' 에 액세스 할 수 없음 : error : 1407742E : SSL 루틴 : SSL23_GET_SERVER_HELLO : tlsv1 경고 프로토콜 버전

그래서 여러 리포지토리에서 테스트했는데 컴퓨터에서 동일한 오류가 발생했습니다. 다른 사람이 동일한 리포지토리와 상호 작용하도록했으며 제대로 작동합니다. 이 오류가 발생하기 전에 나는 프로젝트에서 "npm install sharp"를했고 결국 실패했고 이것이 SSL 설정을 엉망으로 만들었을지도 모른다고 생각합니다.

일반적인 생각이나 안내를 주시면 감사하겠습니다!

도움이된다면 내 환경은 다음과 같습니다.

  • Git 버전 : 1.9.4.msysgit.2
  • Windows 버전 : Windows 8.1

여기에 같은 문제가 있습니까?
LYES-CHIOUKH

자식 1.9.5.msysgit.1와 여기에 같은
막심 헬렌

저도 같은 문제를 겪고있어
추적 카브레라

11
이 변경으로 인해 오류가 발생했다고 생각합니다. github.com/blog/2507-weak-cryptographic-standards-removed
Dan H

나는 같은 문제가 있었고 Github 데스크탑을 설치했고 모든 것이 잘 작동했습니다!
Damian

답변:


69

TortoiseGit 및 GCM을 업데이트하는 것은 도움이되지 않았지만 @Frederic의 의견에 따라 Git 자체를 업데이트하면 도움이되었습니다.

https://git-scm.com/download/win

새 버전의 Git이 제대로 설치되고 이전 설치와 충돌하지 않는지 확인하려면 (다른 폴더를 사용하고 PATH 변수와 엉망이되기 때문에 TortoiseGit을 사용한 경우) 업데이트 된 Git을 설치하기 전에 기존 Git 설치를 제거하십시오. . 관리자 권한으로 설치해야 할 수도 있습니다.


나는 오늘이 오류를 던지기 시작하기 위해 마지막 버전의 git에서 무슨 일이 일어 났는지 잘 모르겠지만이 대답은 나를위한 것입니다. 새로 설치 (2 일 이전 빌드)를 수행하고 백업하고 SSL 오류를 실행하지 않습니다. 건초 더미의 바늘에 대해 이야기하십시오.
JeffBaumgardt

3
가장 흥미로운 부분은 github 자체가 최근 업데이트와 관련이 있음에도 불구하고 이것을 언급하지 않는다는 것입니다. 다른 코드 호스팅과 유사한 문제에 관한 빠른 Google 검색은 OpenSSL을 비난합니다.
feos

네, 최신 버전으로 업데이트해야합니다! 감사합니다 : D
Shayan Nahrvar

1
@gath 아마도 호환되지 않는 git 설치가 2 개있을 것입니다. 기존 설치를 완전히 제거한 다음 git을 처음부터 다시 설치하십시오. 하지만 귀하의 오류는 다른 것입니다. stackoverflow.com/questions/3778042/…
feos

5
저에게는 "업데이트 된 Git을 설치하기 전에 기존 Git 설치를 제거"하는 것이이 모든 문제의 핵심이었습니다.
리처드 Ockerby

20

GitHub의 약한 SSL 암호화 프로토콜 지원 중단과 호환되지 않는 문제가 발생할 수 있습니다.

취약한 암호화 표준 제거 알림

솔루션은 다양하지만 Windows의 경우 Git 자격 증명 관리자를 1.14.0으로 업그레이드해야 할 수 있습니다.

https://github.com/Microsoft/Git-Credential-Manager-for-Windows/releases/tag/v1.14.0


1
Windows 용 내장 Git 자격 증명 관리자 인 wincred를 계속 지원합니까? 해당 도구에서 동일한 오류가 발생합니다
Max Hartshorn

이 답변은 변경 사항에 대한 컨텍스트를 제공하는 데 도움이되었지만 @feos의 솔루션이 저에게 효과적이었습니다 (Windows 10, TortoiseGit)
Eric Farraro

14

Android Studio 또는 IntelliJ IDEA를 사용하는 경우 Git을 최신 버전으로 업데이트 하고 새 버전을 가리 키도록 경로를 변경하면 문제가 해결됩니다.

여기에 이미지 설명 입력


1
이것은 나에게도 효과적이었습니다. 최신 버전의 Git을 설치하고 IntelliJ IDEA를 가리 키십시오.
user1825866

8

TortoiseGit을 사용하여 다른 모든 수정 / 업데이트를 수행했지만 여전히 성공하지 못했습니다. 나는 이것을 발견했다 : 갑자기 git push / pull / fetch 할 수 없음

Windows 용 Git에 대한 TortoiseGit 설정 Git.exe 경로가 C:\Program Files (x86)\Git\bin. 나는 그것을로 변경 C:\Program Files\Git\bin했고 이제 다시 작동합니다.


3
나는 그것을 사용하여 검사 Check now에 버튼을 General으로 설정 대화 상자 x86내가 얻을 수있는 경로 git version 1.9.5.msysgit.1에 변경 한 후, C:\Program Files\Git\bin내가 얻을 수있는 git version 2.16.2.windows.1그 경로로 모두가 잘 작동합니다.
apdevelop

8

이것이 나를 위해 일한 것입니다.

  1. https://git-scm.com/download/win 에서 최신 버전의 Git을 설치합니다.
  2. TortoiseGit에서 메뉴 설정일반Git.exe 경로 로 이동 -32 비트에서 64 비트 경로로 변경 : C : \ Program Files (x86) \ Git \ bin → C : \ Program Files \ Git \ bin

좋은 지적. 저와 같은 사람이 이전 Windows 32 비트 버전을 사용하고 있다면 PATH에서이를 교체해야합니다.
AG는

이 @dgundersen 내 시간을 절약
테자스 메타

8

내 상황에서는 Git 업데이트만으로는 충분하지 않았습니다. 몇 시간 동안 디버깅 한 후 다음과 같이 수정했습니다.

C:\wamp64\www\maandlastenmanager> git config http.sslVersion
tslv1.0

C:\wamp64\www\maandlastenmanager> git config http.sslVersion tlsv1.2

C:\wamp64\www\maandlastenmanager> git config http.sslVersion
tslv1.2

이것은 저와 완전히 다른 설정 (Mac OS X)에서 문제를 해결했습니다. curl여전히 나에게 메시지를 제공합니다. 이러한 설정이 모든 ssl-apps에 적용되는지 궁금합니다 git. ...
chesterbr

이 라인 중 어느 것입니까?
Dmitri Zaitsev

2

Visual Studio Code 터미널의 GitHub에서 코드를 가져 오는 동안 동일한 문제가 발생했습니다 . 이전 답변의 조언이 유용하다는 것을 알았고 아래 단계에 따라 솔루션을 함께 해킹했습니다.

이 저장소 는 매우 유용했습니다.

누군가에게 도움이되기를 바랍니다.


2

TL; DR : 바이러스 백신 소프트웨어에서 git config --system http.sslbackend schannelHTTPS 검사를 해제 github.com합니다.


Windows 8 x64에서 Git 명령 줄을 사용하고 있습니다. 또한 내 바이러스 백신 소프트웨어는 기본적으로 HTTPS 트래픽확인합니다 . 이 질문에 답하는 다른 사람들과 마찬가지로 저는 거의 매일 GitHub를 사용합니다.

  • Git 업데이트-도움이 안 됨-OpenSSL을 사용했기 때문에 (아래 참조)
  • 자격 증명 관리자 업데이트-도움이되지 않음

그런 다음 SSL 백엔드를 전환하기 시작했습니다.

git config --system http.sslbackend openssl ----------------vs------------------ git config --system http.sslbackend schannel 바이러스 백신 소프트웨어는 SSL 트래픽을 확인합니다.

  1. OpenSSL, HTTPS 확인 사용 : error:0407006A:rsa routines:RSA_padding_check_PKCS1_type_1:block type is not 01
  2. OpenSSL, HTTPS 확인 해제 : SSL certificate problem: unable to get local issuer certificate
  3. SecureChannel, HTTPS 체크 ON : schannel: next InitializeSecurityContext failed: Unknown error (0x80092012) - The revocation function was unable to check revocation for the certificate.
  4. SecureChannel, HTTPS 확인 해제 : 정상적으로 작동 함

추신 : 명령 줄 대신 "기본 Windows SSL 유효성 검사 라이브러리 사용"을 선택하여 최신 Git을 다시 설치할 수 있습니다.

PPS : 사례 (3)은 내 바이러스 백신 소프트웨어가 사용하는 MITM 인증서가 내 컴퓨터에 화이트리스트에 있기 때문에 schannel 라이브러리의 버그 인 것 같습니다.


git을 다시 설치할 때 이전 설치를 완전히 제거하고 새 설치를 위해 OpenSSL을 선택 했으므로 처음부터 다시 설치 한 것 같습니다. 하지만 바이러스 백신이 없습니다. SSL 백엔드 재설치로 인해 변경된 사항이 있습니까, 아니면 변경하지 않았습니까?
feos

@feos 예, 비 OpenSSL 모드에서만 작동합니다. 또한 AV에서 https 확인을 해제해야했습니다.
Mike Makarov

아직 명확하지 않습니다. SSL을 다시 설치 했습니까?
feos

@feos 아니요. Windows에서 "SSL을 다시 설치"할 수 없다고 생각합니다. 이게 무슨 뜻인지 잘 모르겠습니다. 최신 git 클라이언트를 설치할 때 OpenSSL 백엔드 또는 Windows 통합 클라이언트를 선택할 수 있습니다. 저는 OpenSSL을 선택했습니다. 작동하지 않았고 구성을 통해 백엔드를 변경했습니다. 이것이 명확하기를 바랍니다.
Mike Makarov

감사합니다. OP와는 완전히 다른 문제가 있다고 생각합니다.
feos

1

맥 OS에, 당신은 할 수 있습니다 설치 최신 git통해 Homebrew.


불행히도 이것은 Mac OS X 10.7.5 (Lion)에서 작동하지 않았습니다. 같은 오류가 발생했습니다. 그런 다음 Homebrew처음부터 설치를 시도 했습니다. error: error:1407742E:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert protocol version while accessing https://github.com/Homebrew/brew/info/refs?service=git-upload-pack fatal: HTTP request failed
Setaa

@Setaa, 음, 릴리스 페이지에서 수동으로 설치하려고 할 수 있습니까? 그들은 1.5.5
AS

1

Git 1.9.5.msysgit.1도 나에게 동일합니다. https://github.com/Microsoft/Git-Credential-Manager-for-Windows/releases/tag/v1.14.0 을 설치하려고했습니다. 했지만 변경 사항은 없습니다.

실제로 설치 후 아무 일도 일어나지 않습니다. 내가 뭔가 잘못하고있는 것일까? (초기 질문에는 도움이되지 않을 수 있지만 다른 사람들에게는 도움이되지 않습니다!)


6
커뮤니티를 돕기 위해 방금 git (Windows 용) ( git-scm.com/download/win 사용 )을 업데이트했고 문제가 해결되었습니다!
Frederic

2
Windows 7 Pro / 64에서 git-scm.com/download/win 링크를 사용하여 git을 업그레이드했습니다. 이것은 c : \ program files (x86) \ git이 아닌 c : \ program files \ git에 git을 설치했습니다. 내 버전이 1.9.5.msysgit.1에서 2.16.2.windows.1로 변경되었으며 WebStorm이 최신 버전을 가리 키도록 구성했을 때 신비한 1407742E : SSL 루틴 : SSL23_GET_SERVER_HELLO : tlsv1 경고 프로토콜 버전 오류가 중단되었습니다.
CODE-REaD

참고로 내 설정은 다음과 같습니다.C:\Program Files\Git\etc> cat install-options.txt Editor Option: Notepad++ Path Option: Cmd Plink Path: C:\Program Files (x86)\PuTTY\plink.exe SSH Option: Plink CURL Option: OpenSSL CRLF Option: CRLFAlways Bash Terminal Option: MinTTY Performance Tweaks FSCache: Enabled Use Credential Manager: Enabled Enable Symlinks: Disabled
CODE-REaD

답변을 업그레이드하도록 격려해야합니다.
Edward Thomson

1

예, 오늘 풀 요청에서 동일한 문제가 발생했으며 해결책은 Windows 용 Git의 최신 (2.16.2) 64 비트 버전을 다운로드하여 Git을 업데이트하는 것이 었습니다. 5 일 전 2018-02-20에 출시되었습니다.


1

@andw의 의견은 나를 위해 일했습니다.

다음 단계를 사용하여 Git 버전 1.9.5를 2.15.1로 업데이트합니다.

sourceTree에서 도구옵션GitEmbedded Git 사용 메뉴로 이동합니다 .


1

빠른 해결책은 git config --global http.sslVerify true입니다. 이지만 SSL을 사용하는 목적을 권장되지 않습니다.

두 번째이자 더 나은 방법은 SSL URL 대신 ssh 키를 사용하는 것입니다.

SSH 키를 생성하는 단계

o Git 터미널 (Git Bash)에서 다음 명령을 실행합니다. ssh-keygen

명령을 실행하면 다음 메시지가 나타납니다.

공개 / 개인 RSA 키 쌍 생성.

키를 저장할 파일 입력 (/h//.ssh/id_rsa) :

예를 들어 키를 저장할 파일 (/h//.ssh/id_rsa)을 입력합니다. C:\Users\Public\my-new-ssh-key

그런 다음 해당 키에 대한 암호를 입력하십시오 (최소 8 자의 암호).

• 다음으로 다음 명령을 실행합니다. eval "$ (ssh-agent –s)"

• 다음 명령을 실행합니다. ssh-add C:/Users/Public/my-new-ssh-key 참고 : 새로 생성 된 SSH 키의 경로에 슬래시를 사용합니다.

그런 다음 my-new-ssh-key.pub 파일의 내용 을 추가하고 공개 키 추가 (Bitbucket, GitHub 등) 의 텍스트 영역에 추가합니다 .


0

가져 오기, 가져 오기, 푸시 등을 위해 원격 저장소에 연결하는 동안 동일한 오류가 발생했습니다.

fatal: unable to access 'https://github.com/repository.git/': error:1
407742E:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert protocol version

32 비트 대신 Git 64 비트를 다시 설치했는데 문제가 해결되었습니다.

설치 후 환경 변수에서 Git 경로를 확인하십시오. 그것은해야한다:

C:\Program Files\Git\bin\git.exe

0

이것은 IntelliJ 및 RubyMine의 문제입니다. GitHub는 TLS를 위해 SSL을 비활성화해야합니다 (PCI 준수 가능성이 있습니까?). IntelliJ 또는 RubyMine에서 설정을 열고 버전 제어> Git으로 이동하면 애플리케이션 경로 아래에 설치된 git.exe를 사용하고 있음을 알 수 있습니다. 최신 버전의 Git을 다운로드하고 VCS 설정에서 경로를 변경해야합니다 (예 : Windows에 설치하는 경우 C : \ Program Files \ Git \ bin \ git.exe). 그 후에는 매력처럼 작동합니다.


0

때때로 이것은 오래된 ssl을 사용하고 더 이상 유지되지 않는 오래된 msysgit로 인해 발생합니다. 최신 git for windows를 설치 하고 tortoise 설정에서 git.exe 경로를 가리키면이 문제가 사라집니다.


0

유사한 오류가 발생했습니다. Windows에서 Windows의 git을 최신 버전으로 업데이트했습니다. 문제가 해결되었습니다.


이것이 문제를 해결하기 위해 git 업데이트를 제안하는 수락 된 답변에 어떻게 추가합니까?
David

나는 무엇이 나를 위해 일했는지 설명했다. 다른 사람들이 한 것과 비슷합니다.
Olusola Omosola

0

힘내 버전 업그레이드가 나를 위해 트릭을했습니다. 1.9.5 버전을 가지고있어서 2.21.0으로 업그레이드했습니다 . Windows 으로 . 또한 업그레이드도 매우 쉽습니다. 이전 버전을 제거 할 필요가 없습니다. 최신 Git 설치 프로그램을 다운로드하고 기본 옵션을 사용하여 계속해서 다음을 누르면 버전이 새 버전으로 변경되고 모든 이전 설정은 여전히 ​​ssh 키 등으로 작동합니다. 키를 다시 생성하고 설치할 필요가 없습니다. github 또는 다른 저장소.

이전에 내 https 프로토콜 복제가 작동하지 않고 오류가 발생했습니다.

치명적 : ' https://github.com/tensorflow/models/ ' 에 액세스 할 수 없음 : 오류 : 1407742E : SSL 루틴 : SSL23_GET_SERVER_HELLO : tlsv1 경고 프로토콜 버전

새 버전을 다운로드하고 동일한 복제 명령을 실행하면 아무런 문제없이 작동했습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.