연결시 알 수없는 SSL 프로토콜 오류
내 커밋을 Bitbucket 저장소로 푸시하고 싶지만이 오류가 발생했습니다.
Fatal: unable to access
'https://myUsername@bitbucket.org/myUsername/myRepository.git/':
Unknown SSL protocol error in connection to bitbucket.org:443
bitbucket 지식 기반 에 따르면 저장소 소유자가 계획 한도를 초과하여 발생할 수도 있습니다.
페이지를 더 아래로 보면 너무 오래된 git 버전 (현재 1.7이 필요함)을 사용하여이 오류를 유발할 수도 있습니다.
더 많은 정보를 얻을 수 있습니다.
# Windows
set GIT_CURL_VERBOSE=1
set GIT_TRACE_PACKET=2
# Unix
export GIT_CURL_VERBOSE=1
export GIT_TRACE_PACKET=2
그런 다음 git push
.
프록시 설정이있는 경우 다시 확인하십시오.
참고 : git 2.8 (2016 년 3 월)은 오류 35에 대한 추가 정보를 추가합니다.
Shawn Pearce ( )의 commit 0054045 (2016 년 2 월 14 일)를 참조하십시오 . (의해 병합 - Junio C 하마노 - 에 97c49af 커밋 2016 24 2 월)spearce
gitster
remote-curl
:curl_errorstr
SSL 설정 실패에 포함를 들어
curl
오류 35 (CURLE_SSL_CONNECT_ERROR
) 사용자에 저장된 추가 텍스트 필요가CURLOPT_ERRORBUFFER
연결이 시작되지 않은 이유를 디버그합니다.
이것은curl_errorstr
내부에http.c
있으므로 비어 있지 않은 경우 메시지에 포함하십시오.
이전에 작동했지만 오늘은 작동하지 않았다면 SSL 개인 키가 BitBucket 측에서 만료되었을 수 있습니다 (아래의 이유 # 3 참조). 여기에서는 그렇지 않은 것 같습니다 (인증서는 다음까지 유효합니다. 2014 년 3 월 12 일).
목적지 사이트가 프로토콜을 좋아하지 않는다
다음과 같은 요청을 실행하면 알 수없는 SSL 프로토콜 오류가 발생합니다.
curl --sslv2 https://techstacks-tools.appspot.com/
왜? 이 경우에는 techstacks 도구 사이트가 SSLv2를 지원하지 않아서 curl (35) 오류가 발생하기 때문입니다.
대상 사이트가 암호를 좋아하지 않음
사이트가 거부하도록 구성된 SSL 암호를 사용하여 사이트에 연결하려고 할 수 있습니다.
예를 들어 익명의 암호는 일반적으로 고객을 대상으로하는 SSL 암호화 사이트에서 비활성화됩니다. (많은 사람들이 목적에 관계없이 SSL로 암호화 된 웹 사이트에 대해 포괄적 인 거부 정책을 설정했습니다.)
다음 명령 문자열 "can"도 curl (35) 오류를 발생시킵니다.
curl --ciphers ADH-RC4-MD5 https://some_web_site.some_domain.com/
불행히도 curl에서 얻을 수있는 오류 응답 유형은 주로 SSL 서버에 따라 다릅니다. 일부 사이트에서는 Unknown SSL Protocol 오류가 표시되지만 내 techstacks-tools 사이트에서는 다음과 같은 메시지가 표시됩니다.
curl: (35) error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure
이 특정 오류는 적어도 SSL 소켓이 시작되었지만 핸드 셰이크 실패로 인해 소켓이 완료 될 수 없다는 것을 알려주기 때문에이 특정 오류가 내 웹 사이트에서 생성하는 것보다 좀 더 설명 적이기 때문에 Google에 찬사를 보냅니다.
사이트에서 지원하는 암호를 사용하여 사이트에 연결해보십시오. 어떤 암호를 사용할지 잘 모르시겠습니까? 글쎄, 내 cryptonark SSL 암호 테스터를 소개하겠습니다 ...
SSL 개인 키가 만료되었습니다.
저는 오늘 이전 WebSeAL 사이트에서 작업하면서이 문제를 발견했습니다.
IBM GSKit에서 개인 키 비밀번호의 유효 기간을 지정할 수 있습니다. 특정 날짜에 도달 한 후에도 여전히 webseal을 시작하고 포트 443 (또는 https-port 값을 설정 한 값)에서 수신 할 수 있지만 SSL 세션을 성공적으로 협상 할 수는 없습니다.
오늘날의 경우 이전 WebSEAL 인스턴스는 만료 된 개인 키 암호가 긴 만료 된 kdb 파일을 사용하고있었습니다. 올바른 최신 버전으로 교체되면 모든 것이 다시 작동했습니다.
부적절한 리디렉션
일부 ISP 및 DNS 제공 업체는 실패한 DNS 쿼리를 가로 채서 대체 URL을 제공하는 검색 엔진 결과 스타일 페이지 또는 "이것을 찾으 셨나요 ...?" 카운터 쿼리 결과.
다음과 같은 오류가 표시되는 경우 :
error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol,
호스트 이름을 잘못 입력했거나 호스트 이름이 아직 DNS에 표시되지 않았기 때문일 수 있습니다. 간단한 "
host
"또는 "nslookup
"로 확인할 수 있습니다 .
참고 (2015 년 8 월) : Git 2.6 이상 (2015 년 3 분기)에서는 SSL 버전을 명시 적으로 지정할 수 있습니다.
http
: SSL 버전 지정 지원 추가
Elia Pinto ( )의 commit 01861cb (2015 년 8 월 14 일)를 참조하십시오 . 도왔-기준 : 에릭 선샤인 ( ) . (Merged by Junio C Hamano -- in commit ed070a4 , 26 Aug 2015)devzero2000
sunshineco
gitster
http.sslVersion
기본값을 적용하려는 경우 SSL 연결을 협상 할 때 사용할 SSL 버전입니다.
사용 가능한 기본 버전은 libcurl이 NSS 또는 OpenSSL에 대해 빌드되었는지 여부와 사용중인 암호화 라이브러리의 특정 구성에 따라 다릅니다. 내부적으로 이것은 'CURLOPT_SSL_VERSION
'옵션을 설정합니다 . 이 옵션의 형식과 지원되는 SSL 버전에 대한 자세한 내용은 libcurl 설명서를 참조하십시오.
실제로이 옵션의 가능한 값은 다음과 같습니다.
- sslv2
- sslv3
- tlsv1
- tlsv1.0
- tlsv1.1
- tlsv1.2
Can be overridden by the '
GIT_SSL_VERSION
' environment variable.
To force git to use libcurl's default ssl version and ignore any explicithttp.sslversion
option, set 'GIT_SSL_VERSION' to the empty string.
Setting the following git setting fixed this for me
git config --global --add http.sslVersion tlsv1.0
I'm guessing the corporate proxy server did not like the default encryption protocol.
In many cases it is linked to proxy problems. If so just config your git proxy
git config --global http.proxy HOST:PORT
This error also comes up with the Server is down. Email from tech support on the issue:
"We experienced an outage where it affected traffic to the website, as well as Mercurial and Git traffic over HTTPS. SSH was unaffected though. Feel free to check this page for more info:
So try again later and it could work itself out. Did for me
I was getting that behind a corporate proxy.
Solved by:
git config http.sslVerify "false"
I get the same problem. With the last version of git and no proxy.
I fixed it:
- sign in the GitHub
- enter the interface: "Personal settings", then click "SSH Keys" please confirm whether you have put the 'id_rsa.pub' that generated by the command
- 'ssh-keygen -t rsa ' on windows into github --> GIT BASH
- 'Add SSH key' and put the 'id_rsa.pub' into it.
More info: create the key
I faced this issue while i was using version control in Android Studio 2.1.3, the scenario i faces was as follows :
1- i opened the IDE and clicked on the "update / pull" icon (Ctrl+T)
2- it did not ask for the Master password and it failed, gave me this error :
Unknown SSL protocol error in connection to bitbucket.org:443
3- i tried to fetch the repository (right click > git > repository > fetch)
4- it asked me for the master password and i entered it
5- it tried to fetch but it failed again and again and again
6- i restarted Android studio
7- i tried to fetch the repository (right click > git > repository > fetch)
8- it asked me for the master password and i entered it
9- now things are OK, every thing goes fine
Conclusion :
maybe Android Studio needs the Master password first before any git actions, else it will keep failing even if it asked for Master password later on, i don't know, this is the scenario that happened to me
having 2 computers,
number one is my corporate lab-top connected via VPN to our corporate network. That is like being inside the company behind big firewalls and a bunch of routers, with folk, internal and external (even telecom) fiddling around on the network and the firewall, and to reach out, I have to provide credentials such as proxy user and password and even then, sometimes it works and sometimes not.
i.e. I can reach out through the firewall using SVN JSVN MAVEN downlaods, ANT downloads, and I can use git clone http://git... repos.
But I can not do git clone https://git... repo. I this latest case I get this error.
The number two computer on-site with me is my little lab-top from home, nothing special, connected through WAN to the www and getting stuff down with all the mentioned tools above plus git clone https://git... repo works like a sniff without doing something special.
Conclusion: Sitting behind a "somehow managed firewall" is often the reason for troubles. To figure that out, take your little unprotected lab-top and have a www connection from home and if it runs, don't waste the time with your security guys, they will work for weeks unless the know why it does not work in your case, and maybe you can share with a portable drive the cloned git repo.
Josef - getting old with wasting time in such situations ;-)
I use tortoiseGit. I had the same problem. Then in push settings I unchecked "autoload putty key", tried to push, then I checked it again, and pushed, and it worked. But seriously, I don't know why.
execute
nc -v -z <git-repository> <port>
your out put should look like
"Connection to <git-repository> <port> port [tcp/*] succeeded!"
if you get
connect to <git-repository> <port> (tcp) failed: Connection timed out
You need to edit your ~/.ssh/config
file. Add something like the following:
Host example.com
Port 1234
The corporate HTTP proxy behind which I currently am sporadically gives this error. I can fix it by simply visiting bitbucket.org in a browser, then retyring the command. Have no idea why this works, but it does fix it for me (at least temporarily).
If you meet "Unknown SSL protocol error in connection to bitbucket.org:443" and you are in China, maybe github is been blocked by firewall temporarily. You can try to use VPN, which would work out. Good Luck!
This error happen to me when push big amount of sources (Nearly 700Mb), then I try to push it partially and it was successfully pushed.
I had the same issue, tried all changing SSL settings that are provided here. If you are in the corporate network and ssh keys used in such tools like Gerrit. 1. Get your ssh key, 2. Visit Bitbucket and navigate to Profile >> Settings >> SSH Keys >> Add Key.
After ssh key addition, try to push again.
I was able to solve it by running
git config --list --show-origin
and then seeing that I had a line:
file:c:/Users/user/.gitconfig http.sslversion=sslv3
I edited the file, c:/Users/user/.gitconfig, and deleted the line [http] and the line sslversion=sslv3 and that fixed it for me.
참고URL : https://stackoverflow.com/questions/20491027/unknown-ssl-protocol-error-in-connection
'program story' 카테고리의 다른 글
열거 형에 Type ( "typeof ()"사용)을 저장할 수 있습니까? (0) | 2020.11.30 |
---|---|
//로 CSS 한 줄을 주석 처리하는 것은 나쁜 습관입니까? (0) | 2020.11.30 |
dplyr 필터 : 최소 변수가있는 행을 가져 오지만 최소값이 여러 개인 경우 첫 번째 행만 가져옵니다. (0) | 2020.11.30 |
moment.js를 사용하여 이번 달의 일 수 가져 오기 (0) | 2020.11.30 |
다중 클라이언트 응용 프로그램에 대해 단일 또는 다중 데이터베이스 설정을 사용해야합니까? (0) | 2020.11.30 |