Gitプル/プッシュ-HTTPSにアクセスできず、SSLルーチンがダウンしているようです


105

私は毎日Git(およびGitHub)を使用していますが、すべてが正常に機能していて、突然、Gitコマンドを使用してリモートGitHubリポジトリと通信できなくなります。「Gitプル」しようとすると、次のエラーが発生します。

致命的:「https://github.com/snahrvar/eatibl.git/」にアクセスできません:エラー:1407742E:SSLルーチン:SSL23_GET_SERVER_HELLO:tlsv1アラートプロトコルバージョン

そのため、複数のリポジトリでテストしたところ、コンピュータで同じエラーが発生しました。私は他の誰かにそれらの同じリポジトリを操作させました、そしてそれらはそれらのためにうまく働きます。このエラーが発生する前に、プロジェクトで「npm install sharp」を実行したところ、失敗しました。これは、SSL設定に問題があると思われますが、それは大げさな推測です。

一般的な考えやガイダンスは大歓迎です!

それがまったく役立つ場合は、ここに私の環境があります:

  • Gitバージョン:1.9.4.msysgit.2
  • Windowsバージョン:Windows 8.1

ここで同じ問題?
LYES-CHIOUKH 2018年

ここでもgit 1.9.5.msysgit.1と同じ
Maxime Helen

私は同じ問題を経験しています
カブレラを追跡します

11
この変更がエラーの原因であると思い
Dan H

私は同じ問題を抱えてGithubデスクトップをインストールし、すべてがうまくいきました!
ダミアン

回答:


69

TortoiseGitとGCMを更新しても助けにはなりませんでしたが、コメントの@Fredericのアドバイスに従って、Git自体を更新することは助けになりました。

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

新しいバージョンのGitが正しくインストールされ、以前のインストールと競合しないことを確認するには(TortoiseGitを使用した場合、PATH変数で異なるフォルダーと混乱を使用するため)、更新されたGitをインストールする前に既存のGitインストールを削除します。管理者権限でインストールする必要がある場合もあります。


最後のバージョンのgitで何が起こって今日これらのエラーをスローし始めたのかはわかりませんが、この答えは私にとってそれです。フレッシュインストール(2日経過したビルド)を取りましたが、バックアップしてsslエラーを実行していません。干し草の山の針について話します。
JeffBaumgardt

3
最も興味深いのは、最近の更新に関連している可能性があるとしても、github自体がこれについて言及していないことです。他のコードホスティングに関する同様の問題に関するGoogleのクイック検索は、OpenSSLのせいです。
feos 2018

はい、最新バージョンに更新するだけで十分です。ありがとう:D
Shayan Nahrvar 2018

1
@gath互換性のないgitのインストールが2つある可能性があります。既存のものを完全にアンインストールしてから、gitを最初から再インストールしてください。しかし、あなたの誤差が異なるものがあるstackoverflow.com/questions/3778042/...
feos

5
私にとって、更新されたGitをインストールする前に、既存のGitインストールを削除することが、この全体的な失敗の鍵でした。
Richard Ockerby 2018年

20

GitHubの弱いSSL暗号化プロトコルの非推奨と互換性がない可能性があります。

弱い暗号規格の削除通知

ソリューションは異なりますが、Windowsの場合、Git資格情報マネージャーを1.14.0にアップグレードする必要がある可能性があります

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


1
組み込みのGit資格情報マネージャーであるwincredを引き続きサポートしますか?そのツールで同じエラーが発生します
Max Hartshorn

この回答は変更に関するコンテキストを提供するのに役立ちましたが、@ feosからの解決策は私(Windows 10、TortoiseGit)のために機能したものです
Eric Farraro

14

Android StudioまたはIntelliJ IDEAを使用している場合、Gitを最新バージョンに更新し、新しいバージョンを指すようにパスを変更すると、問題が解決します。

ここに画像の説明を入力してください


1
これも私にとってはうまくいきました:最新バージョンのGitをインストールし、IntelliJ IDEAにそれをポイントさせます。
user1825866 2018

8

TortoiseGitを使用して、このために提供された他のすべての修正/更新を行いましたが、まだ成功していません。私はこれを見つけました:突然git push / pull / fetchできません

Git for Windowsの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 2018

8

これは私のために働いたものです。

  1. こちらから最新バージョンのGitをインストールしてくださいhttps : //git-scm.com/download/win
  2. TortoiseGitでは、メニューに行く設定一般Git.exeパス - 64ビットのパスに32ビットからの変更をします。C:\ Program Files(x86の)\ Gitの\ binに→C:\プログラムファイル\のGit \ binが

いい視点ね。(私のような)誰かが古いWindows 32ビットバージョンを使用している場合は、必ずPATHで置き換えてください。
AG

これは私の時間を節約しました@dgundersen
Tejas Mehta

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チェックがオン: schannel: next InitializeSecurityContext failed: Unknown error (0x80092012) - The revocation function was unable to check revocation for the certificate.
  4. SecureChannel、HTTPSチェックオフ:正常に機能しました

PS:コマンドラインの代わりに、「ネイティブのWindows SSL検証ライブラリを使用する」を選択して、最新のGitを再インストールすることができます。

PPS:ケース(3)はschannelライブラリのバグのようです。私のウイルス対策ソフトウェアが使用するMITM証明書が私のマシンでホワイトリストに登録されているためです。


gitを再インストールするときに、古いインストールを完全に削除し、新しいインストールではOpenSSLを選択したので、最初から再インストールしたと思います。しかし、私はウイルス対策を持っていません。SSLバックエンドの再インストールで何か変更はありましたか、それとも変更しませんでしたか?
feos 2018

@feosはい、OpenSSL以外のモードでのみ機能します。さらに、AVでhttpsチェックをオフにする必要がありました。
マイクマカロフ

SSLを再インストールしましたか?
feos 2018

@feosいいえ、しませんでした。Windowsに「SSLを再インストール」できるとは思いません。これが何を意味するのかわからない。最新のgitクライアントをインストールするときに、OpenSSLバックエンドまたはWindows統合バックエンドを選択するオプションがあります。私はOpenSSLを選びました。それはうまくいきませんでした、そして私は設定を通してバックエンドを変えました。これが明確になることを願っています。
マイクマカロフ

感謝します。OPとはまったく別の問題があったと思います。
feos 2018

1

macOSでは、最新バージョンを経由でインストールできます。gitHomebrew


残念ながら、これはMac OS X 10.7.5(Lion)では動作しませんでした-同じエラーが発生しました。次にHomebrew、最初からインストールしてみました-キャッチ22のようです。 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でcatch22に対処したようです
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で)更新し、問題を解決しました!
フレデリック

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アラートプロトコルバージョンエラーが発生しなくなりました。
コードリード2018

FYI、私のセットアップがある: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

答えをアップグレードするように励ましてください。
エドワードトムソン

1

ええ、私は今日のプルリクエストで同じ問題に遭遇しました。解決策は、Git for Windowsの最新(2.16.2)64ビットバージョンをダウンロードしてGitを更新することでした。5日前の2018-02-20にリリースされました。


1

@andwのコメントは私にとってうまくいきました:

次の手順を使用して、Gitバージョン1.9.5を2.15.1に更新します。

sourceTreeで、[ ツール ] →[ オプション ] →[ Git] →[ 埋め込みGitを使用 ]に移動します。


1

簡単な解決策はgit config --global http.sslVerify trueです、SSLを使用した目的に、お勧めできません。

2番目のより良い方法は、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のコンテンツを追加し、それをAdd public key(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ビットの代わりに64ビットのGitを再インストールしたところ、問題が解決しました。

インストール後、環境変数の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が原因で発生します。Windows 用の最新のgitをインストールし、亀の設定でgit.exeパスをポイントすると、この問題は解消します。


0

同様のエラーが発生しました。Windowsでは、Windowsのgitを最新バージョンに更新しました。これで問題が解決しました。


これは、問題を修正するためにgitを更新することを示唆する、受け入れられた回答にどのように追加しますか?
デビッド

私は何がうまくいったかを説明しました。他の人もやったのと同じように。
Olusola Omosola

0

Gitのバージョンアップグレードでうまくいきました。バージョン1.9.52.21.0にアップグレードしました Windowsでた。また、アップグレードは非常に簡単です。古いバージョンをアンインストールする必要はありません。最新のGitインストーラーをダウンロードし、デフォルトのオプションを使用して次へと押し続けると、バージョンは新しいバージョンに変更され、古い設定はすべてsshキーなどのように機能します。キーを再度生成してオンにする必要はありませんgithubまたはその他のリポジトリ。

以前は、httpsプロトコルのクローンが機能せず、エラーが発生しました

致命的:「https://github.com/tensorflow/models/」にアクセスできません:エラー:1407742E:SSLルーチン:SSL23_GET_SERVER_HELLO:tlsv1アラートプロトコルバージョン

新しいバージョンをダウンロードして同じcloneコマンドを実行すると、問題なく動作しました。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.