programing

Git SSH 오류: "호스트에 연결: 잘못된 파일 번호"

codeshow 2023. 9. 9. 10:22
반응형

Git SSH 오류: "호스트에 연결: 잘못된 파일 번호"

git 가이드를 따라 했는데 gitub에 연결하려고 하면 이상한 문제가 발생합니다.

$ ssh -v git@github.com
OpenSSH_4.6p1, OpenSSL 0.9.8e 23 Feb 2007
debug1: Reading configuration data /c/Documents and Settings/mugues/.ssh/config
debug1: Applying options for github.com
debug1: Connecting to github.com [207.97.227.239] port 22.
debug1: connect to address 207.97.227.239 port 22: Attempt to connect timed out without establishing a connection
ssh: connect to host github.com port 22: Bad file number

이 파일은 .ssh의 구성 파일입니다.

Host github.com
    User git
    Hostname github.com
    PreferredAuthentications publickey
    IdentityFile "C:\Documents and Settings\mugues\.ssh\id_rsa"
    TCPKeepAlive yes
    IdentitiesOnly yes

감 잡히는 게 없어요?

이 문제를 직접 겪은 후, 저는 제게 적합한 해결책을 찾았습니다.

오류 메시지:

    ssh -v git@github.com
    OpenSSH_5.8p1, OpenSSL 1.0.0d 8 Feb 2011
    debug1: Connecting to github.com [207.97.227.239] port 22.
    debug1: connect to address 207.97.227.239 port 22: Connection timed out
    ssh: connect to host github.com port 22: Connection timed out
    ssh: connect to host github.com port 22: Bad file number

MINGGW 셸을 사용하는 윈도우에서만 불량 파일 번호 메시지가 표시됩니다.리눅스 사용자들은 타임아웃만 당합니다.

문제:

SSH가 포트 22에서 차단되었을 수 있습니다.이것은 타이핑으로 볼 수 있습니다.

    $nmap -sS github.com -p 22
    Starting Nmap 5.35DC1 ( http://nmap.org ) at 2011-11-05 10:53 CET
    Nmap scan report for github.com (207.97.227.239)
    Host is up (0.10s latency).
    PORT   STATE    SERVICE
    22/tcp ***filtered*** ssh

    Nmap done: 1 IP address (1 host up) scanned in 2.63 seconds

보시다시피 상태가 필터링되어 있으며, 이는 무언가가 이 상태를 차단하고 있음을 의미합니다.포트 443에 SSH를 수행하면 이 문제를 해결할 수 있습니다(방화벽/isp는 이 문제를 차단하지 않습니다).github.com 이 아닌 "ssh.github.com "로 ssh를 이동해야 하는 것도 중요합니다.그렇지 않으면 ssh 서버 대신 웹 서버에 보고하게 됩니다.아래는 이 문제를 해결하는 데 필요한 모든 단계입니다.

해결책:

(우선 http://help.github.com/win-set-up-git/) 에서 설명한 대로 키를 생성했는지 확인합니다.

file 디렉토리에 ~/.create/config). ㅜㅜ%USERPROFILE%\.ssh\config

다음 코드를 붙여넣습니다.

    Host github.com
    User git
    Hostname ssh.github.com
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/id_rsa
    Port 443

파일을 저장합니다.

평소와 같이 ssh를 수행합니다.

$ssh -T github.com 
    $Enter passphrase for key '.......... (you can smile now :))

사용자 이름이나 포트 번호를 제공하지 않아도 된다는 점에 유의하시기 바랍니다.

핵심 정보는 @Sam의 답변에 적혀 있지만 그다지 두드러지지는 않으니, 분명하게 말씀드리겠습니다.

"나쁜 파일 번호"는 정보를 제공하는 것이 아니라, 윈도우에서 git의 ssh를 실행하는 것을 의미할 뿐입니다.

에서도 없이도 나타나는 선.-v스위치:

ssh: connect to host (some host or IP address) port 22: Bad file number

상관없는 일입니다

이 문제에 초점을 맞추면 실제 문제가 무엇인지에 대한 힌트가 아니라 Windows에서 git의 ssh를 실행하는 효과 때문에 시간을 낭비하게 됩니다.git 또는 ssh 설치 또는 구성이 잘못되었다는 신호도 아닙니다.정말, 무시하세요.

리눅스의 바로 그 명령어가 대신 이 메시지를 만들어 주었는데, 이것은 문제에 대한 실질적인 힌트를 주었습니다.

ssh: connect to host (some host or IP address) port 22: Connection timed out

실제 솔루션: "불량 파일 번호"를 무시하고 더 많은 정보를 얻을 수 있습니다.

추가할 라인에 초점을 맞춥니다.-v지휘 라인에서제 경우에는 다음과 같습니다.

debug1: connect to address (some host or IP address) port 22: Attempt to connect timed out without establishing a connection

저의 문제는 IP 주소의 오타였지만, 당신의 문제는 다를 수 있습니다.

이 질문은 "불량 파일 번호"에 대한 것입니까, 아니면 연결이 시간 초과될 수 있는 많은 이유에 대한 것입니까?

실제 이유가 "연결 시간 초과"일 때만 "불량 파일 번호"가 나타난다는 것을 누군가가 증명할 수 있다면, 연결 시간 초과가 발생할 수 있는 이유를 설명하는 것이 타당합니다.

그 전까지는 "bad file number"는 일반적인 오류 메시지일 뿐이며, 이 질문은 "무시하고 다른 오류 메시지를 찾아보세요"라는 말로 충분히 답할 수 있습니다.

편집: Qwertie는 오류 메시지가 "연결 거부됨"에서도 발생할 수 있기 때문에 실제로 일반적인 메시지라고 언급했습니다.이를 통해 분석이 확인됩니다.

이 질문을 일반적인 힌트와 대답으로 어수선하게 만들지 마십시오. 이 질문의 실제 주제(및 제목)인 "Git SSH 오류: "호스트에 연결: 잘못된 파일 번호"와 무관합니다.사용하는 경우-v당신은 그들 자신의 질문을 받을 만한 더 많은 정보를 주는 메시지를 가지고 있고, 그 다음에 또 다른 질문을 열고, 그러면 당신은 그것에 대한 링크를 만들 수 있습니다.

효과가 있었습니다.

ssh -v git@github.com -p 443

방화벽 또는 차단 프로그램(PeerBlock 등)이 포트를 차단하고 있을 수 있습니다.

다음을 시도할 수도 있습니다.

telnet example.com 22

서버에 연결할 수 있는지 확인합니다.이 메시지를 봤는데 제가 쓰던 VPN이 접속을 차단하고 있었습니다.VPN과 연결이 끊겼는데 잘 다녀왔습니다.

제가 발견한 것은 연결 상태가 좋지 않을 때 이런 일이 일어난다는 것입니다.몇 분 전에 제 레포로 밀어 넣었을 때 계속 고장이 났고 그 후 얼마 후 연결이 끊어졌습니다.

그것이 다시 올라온 후, 그 압력은 즉시 진행되었습니다.

저는 그것이 당신 쪽이나 그들 쪽에서 관계가 떨어졌기 때문에 발생할 수 있다고 생각합니다.

SSH가 22개 이상 차단된 경우

업데이트만 하면 됩니다.origin

git remote set-url origin https://github.com/ACCOUNT_NAME/REPO_NAME.git

변경 사항이 있는지 확인합니다.

git remote -v

설정한 gitbash 인스턴스를 종료하고 다시 시작해 보십시오.결국은 제게 효과가 있었습니다.

저는 단지 같은 문제를 가지고 제가 찾을 수 있는 모든 해결책을 시도했지만 아무 것도 효과가 없었습니다.결국 깃배시를 그만두고 다시 열어보려 했는데 모든 게 완벽하게 작동했습니다.

그러니 깃 배시를 그만두고 다시 열어보세요.

윈도우에서 나는 git bash를 그만두고 다시 실행하려고 했지만 작동하지 않았고, 마침내 나는 (답답한) 다시 시작했고 그것은 다음 번에 작동했습니다 :)

GitHub Administration 인터페이스를 통해 공개 키를 게시했는지 두 번 확인합니다.

그런 다음 포트 22가 어떻게든 차단되지 않았는지 확인합니다( 질문에 나와 있음).

저의 경우 우리 git host의 IP 주소가 변경되었습니다.

단순히 DNS 캐시를 플러시하는 것만으로 문제가 해결되었습니다.

포트 443을 사용하기 위한 구성 파일을 만드는 것은 저에게 효과가 없었습니다.드디어 와이파이 연결을 끄고 다시 켜보려니 문제가 사라졌습니다.이상하다.바보같은 해결책이지만 누군가에게 도움이 될 수도 있습니다 :)

git remote -v ssh://gituser@myhost:/git/dev.git와 같은 것으로 리모콘을 확인합니다.

트리플 슬래시 때문에 틀렸습니다. // slash

회사 네트워크에서 비트버킷에 접속할 때 홈 네트워크에서는 잘 작동하지만 이 문제를 보았습니다.

$ git pull
ssh: connect to host bitbucket.org port 22: Bad file number
fatal: Could not read from remote repository.

https 프로토콜을 사용해서 이 문제를 해결했습니다.

$ git pull https://myaccount@bitbucket.org/myaccount/myrepo.git
Password for 'https://myaccount@bitbucket.org':

'my account'와 'my repo'를 대체할 단어를 사용해 주시기 바랍니다.

Proxy를 설정하는 회사 방화벽 뒤에 있는 Windows 7 (32 Bit) PC에서 AWS EC2 Ubuntu 인스턴스로 SSH를 시도했을 때 다음 솔루션이 효과가 있었습니다.

다음 블록을 에 추가합니다.C:\Users\<YOUR_WINDOWS_USER>\.ssh\config줄로 늘어뜨린

> Host *
>      ProxyCommand "C:/Program Files/Git/mingw32/bin/connect.exe" -H <YOUR_PROXY_SERVER_HOST>:<YOUR_PROXY_SERVER_PORT> %h %p
>      IdentityFile "<PATH_OF_YOUR_IDENTITY_FILE>"
>      TCPKeepAlive yes
>      IdentitiesOnly yes
>     
>     Host <SERVER_HOST_NAME_OR_IP_YOU_WANT_TO_SSH_INTO>
>      Port <SERVER_HOST_PORT_YOU_WANT_TO_SSH_INTO>
>      Hostname <SERVER_HOST_NAME_OR_IP_YOU_WANT_TO_SSH_INTO>

SSH를 사용할 호스트당 유사한 구성을 추가해야 합니다.

Windows에서 파일 질라 연결을 열었을 때 문제가 발생했습니다.파일을 닫았습니다 Zilla -> 문제가 해결되었습니다.

이것은 git bash에서 다음 단계를 쉽게 사용할 수 있는 몇몇 타이핑을 저장하기 위한 간단한 해결책입니다.

(1) 원격 저장소 생성

git remote add origin https://{your_username}:{your_password}@github.com/{your_username}/repo.git

참고: 비밀번호에 '@' 기호가 포함되어 있으면 '%40'을 사용합니다.

(2) 원격 저장소로 원하는 작업을 수행합니다.

ex:- git push origin master

제 경우에는 단순히 WiFi 라우터를 다시 시작하는 것이 도움이 되었습니다.

언급URL : https://stackoverflow.com/questions/7144811/git-ssh-error-connect-to-host-bad-file-number

반응형