Eu segui o guia git, mas tenho um problema estranho ao tentar me conectar ao github:
$ ssh -v [email protected]
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
Este é o meu arquivo de configuração em .ssh
Host github.com
User git
Hostname github.com
PreferredAuthentications publickey
IdentityFile "C:\Documents and Settings\mugues\.ssh\id_rsa"
TCPKeepAlive yes
IdentitiesOnly yes
Qualquer ideia?
Respostas:
Depois de ter esse problema, encontrei uma solução que funciona para mim:
Mensagem de erro:
Você verá apenas a mensagem de número de arquivo inválido quando estiver no Windows usando o shell MINGGW. Os usuários do Linux acabarão com o tempo limite.
Problema:
O SSH provavelmente está bloqueado na porta 22. Você pode ver isso digitando
Como você pode ver, o estado está filtrado, o que significa que algo está bloqueando-o. Você pode resolver isso executando um SSH na porta 443 (seu firewall / isp não bloqueará isso). Também é importante que você precise ssh para "ssh.github.com" em vez de github.com. Caso contrário, você reportará ao servidor da web em vez do servidor ssh. Abaixo estão todas as etapas necessárias para resolver esse problema.
Solução:
(Antes de tudo, verifique se você gerou suas chaves como explicado em http://help.github.com/win-set-up-git/ )
criar arquivo ~ / .ssh / config (arquivo de configuração ssh localizado no diretório do usuário. No Windows, provavelmente
%USERPROFILE%\.ssh\config
Cole o seguinte código nele:
Salve o arquivo.
Execute ssh como de costume:
Observe que não preciso fornecer o nome de usuário ou o número da porta.
fonte
ssh: connect to host ssh.github.com port 443: Bad file number
.ssh/config
arquivo no Windows 7, verifique se você tem um User-Enviromental VarHOME
com%USERPROFILE%
como valor -> me ajudou, quando meu ssh não poderia encontrá-loAs informações principais estão escritas na resposta de @ Sam, mas não são realmente salientes, então vamos deixar claro.
"Número de arquivo inválido" não é informativo, é apenas um sinal de execução do ssh do git no Windows.
A linha que aparece mesmo sem a
-v
chave:é realmente irrelevante .
Se você se concentrar nisso, perderá seu tempo, pois não é uma dica sobre qual é o problema real, apenas um efeito da execução do git's ssh no Windows. Nem sequer é um sinal de que a instalação ou configuração do git ou ssh está errada. Realmente, ignore-o .
O mesmo comando no Linux produziu essa mensagem para mim, que deu uma dica real sobre o problema:
Solução real: ignore "número de arquivo incorreto" e obtenha mais informações
Concentre-se nas linhas que estão sendo adicionadas com
-v
a linha de comando. No meu caso, foi:Meu problema foi um erro de digitação no endereço IP, mas o seu pode ser diferente.
Esta é uma pergunta sobre "número de arquivo incorreto" ou sobre os vários motivos pelos quais uma conexão pode atingir o tempo limite?
Se alguém puder provar que "número de arquivo incorreto" só aparece quando o motivo real é "tempo limite da conexão", faz sentido abordar por que a conexão pode expirar.
Até isso, "número de arquivo incorreto" é apenas uma mensagem de erro genérica e esta pergunta é respondida completamente dizendo "ignore e procure outras mensagens de erro".
EDIT: Qwertie mencionou que a mensagem de erro é realmente genérica, pois também pode ocorrer em "Conexão recusada". Isso confirma a análise.
Por favor, não confunda esta pergunta com dicas e respostas gerais, elas não têm nada a ver com o tópico (e o título) real dessa pergunta, que é "Erro Git SSH:" Conecte-se ao host: número de arquivo inválido "". Se
-v
você estiver usando uma mensagem mais informativa que mereça a própria pergunta, abra outra pergunta e crie um link para ela.fonte
scp
linha de comando adicionou "debug1: conectar ao endereço 216.34.181.70 porta 22: Conexão recusada" antes de "Número de arquivo inválido", portanto nem sempre é um erro de "tempo limite excedido".Isso funcionou para mim:
fonte
Talvez seu firewall ou um aplicativo bloqueador (PeerBlock etc.) esteja bloqueando sua porta
fonte
Você também pode tentar:
para ver se você possui conectividade com o servidor. Eu vi essa mensagem e acabou sendo a VPN em que eu estava bloqueando o acesso. Desconectado da VPN e eu estava pronto para ir.
fonte
O que eu descobri é que isso acontece quando sua conexão é ruim. Há alguns minutos atrás, quando fui ao meu repo, ele continuava falhando e pouco tempo depois, a conexão caiu.
Depois que ele voltou, o impulso passou imediatamente.
Acredito que isso possa ser causado por uma queda na conexão do seu lado ou do deles.
fonte
bad file number
erro quando a conexão cai.Se o SSH estiver bloqueado acima de 22
basta atualizar seu
origin
para httpsgit remote set-url origin https://github.com/ACCOUNT_NAME/REPO_NAME.git
verifique se foram feitas alterações
git remote -v
fonte
Eu apenas tive o mesmo problema e tentei todas as soluções que pude encontrar, mas nenhuma funcionou. Eventualmente, tentei sair do Git Bash e reabri-lo, e tudo funcionou perfeitamente.
Portanto, tente sair do Git Bash e reabri-lo.
fonte
Tente sair da instância do git bash através da qual você fez a instalação e tente reabrir. Eventualmente funcionou para mim.
fonte
No windows, tentei sair do git bash e executar novamente, mas não funcionou. Finalmente, eu (com frustração) fiz uma reinicialização e funcionou da próxima vez :)
fonte
Verifique se você publicou suas chaves públicas por meio da interface de administração do GitHub.
Em seguida, verifique se a porta 22 não está de alguma forma bloqueada (como ilustrado nesta pergunta )
fonte
No meu caso, o endereço IP do nosso host git havia mudado.
Simplesmente liberar o cache DNS corrigiu o problema.
fonte
Criar o arquivo de configuração para usar a porta 443 não funcionou para mim. Finalmente, tentei desligar minha conexão wifi, ligá-la novamente e o problema desapareceu. Esquisito. Solução boba, mas pode ajudar alguém :)
fonte
Verifique seu controle remoto com git remote -v Algo como ssh: /// gituser @ myhost: /git/dev.git
está errado por causa da barra tripla ///
fonte
Eu vi esse problema ao acessar o bitbucket na rede corporativa, enquanto o git funciona bem na rede doméstica.
Eu usei o protocolo https para solucionar isso.
Por favor, use as palavras correspondentes para substituir "myaccount" e "myrepo".
fonte
A solução a seguir funcionou para mim quando tentei fazer o SSH na instância do AWS EC2 Ubuntu no meu PC com Windows 7 (32 bits) por trás do firewall corporativo que configura o Proxy-
Adicione o seguinte bloco ao
C:\Users\<YOUR_WINDOWS_USER>\.ssh\config
arquivoVocê precisará adicionar uma configuração semelhante por host em que deseja fazer o SSH.
fonte
Tive o problema quando tive uma conexão FileZilla aberta no Windows. FileZilla fechado -> Problema resolvido.
fonte
Esta é a solução simples para salvar algumas digitações. Você pode seguir as etapas a seguir no git bash facilmente.
(1) crie o repositório remoto
Nota: Se sua senha contiver o sinal '@', use '% 40' em vez daquele
(2) Faça o que quiser com o repositório remoto
fonte
No meu caso, simplesmente reiniciar o roteador WiFi ajudou.
fonte