un autre "SSH se connecte à l'hôte github.com port 22: mauvais numéro de fichier"

9

J'ai un problème avec ma première connexion SSH. Oui, j'ai déjà fait vos guides, j'ai déjà essayé votre article "Gestion des pare-feu et des proxys" et le problème persiste. J'utilise Win7 32 bits, le pare-feu Windows est désactivé, je n'ai pas de pare-feu tiers, ESET Nod32 Antivirus ne bloque aucun port, je n'utilise aucun proxy (ni proxy local).

Voici les journaux:

  1. Essai de connexion SSH ordinaire

    C:\Users\Mariusz>ssh -vvv [email protected]
    OpenSSH_4.6p1, OpenSSL 0.9.8e 23 Feb 2007
    debug2: ssh_connect: needpriv 0
    debug1: Connecting to github.com [207.97.227.239] port 22.
    debug1: connect to address 207.97.227.239 port 22: Not owner
    ssh: connect to host github.com port 22: Bad file number
    
  2. Essai de connexion NCAT

    C:\Users\Mariusz>ncat github.com 22
    Strange connect error from 207.97.227.239 (10013): No error
    10013 = WSAEACCES
    

    Je pense que la méthode "smart-http-support" ne fonctionnera pas pour moi car je n'ai pas encore créé de repo.
    Je viens de le faire git initlocalement, et je me suis arrêté à l' git pushétape, qui renvoie la même erreur:

    ssh: connect to host github.com port 22: Bad file number
    fatal: The remote end hung up unexpectedly
    
  3. méthode du tire-bouchon (premier article de votre guide)

    Pendant PUTTYing (avec pageant en bg), après avoir entré la connexion - une erreur se produit (MessageBox):

    Disconnected: No supported authentication methods available
    

    Et dans le terminal, ce message est imprimé:

    Server refused our key
    

J'ai généré la clé correctement en utilisant ssh-keygen.

Je n'ai pas essayé de méthode en éditant ~/.ssh/configencore parce que je l'avais pensé parce que je n'avais rien poussé vers mon référentiel distant, donc je ne pourrai rien cloner.

La méthode de transfert SSH ne fonctionnera pas pour moi, car elle "nécessite l'accès à un serveur SSH externe" et je n'en ai pas pour le moment.

Que pouvais-je faire d'autre?

Chris Johnsen
la source
Remarque: «vos guides» semblent faire référence à certains documents GitHub . Je suppose que ce message faisait initialement partie d'une demande de support GitHub et était juste copié et collé dans SO.
Chris Johnsen

Réponses:

7

Vous pouvez utiliser la méthode Smart HTTP. Suivez simplement le deuxième exemple dans les instructions et utilisez push au lieu de cloner. Par exemple:

git push https://[email protected]/mariusz/project.git

Il fonctionne pour toutes les gitcommandes qui impliquent des référentiels distants.

Patchs
la source
Oui, il semble que le demandeur ait des problèmes de réseau avec SSH; L'accès basé sur HTTP est probablement la meilleure idée. @Mariusz: Avec GitHub, l'accès «intelligent HTTP» est un remplacement direct pour l'accès basé sur SSH (tant que vous avez Git 1.6.6 ou une version ultérieure de votre côté). Utilisez simplement l' https://github.com/user/repo.gitURL au lieu de git@github:user/repo.git(par exemple dans votre configuration à distance).
Chris Johnsen
cette technique peut-elle également fonctionner pour les github gists?
Mark Heath
@Mark: Il semble que GitHub ne supporte pas du tout HTTP pour Gist. Je ne pouvais même pas cloner un référentiel Gist dessus.
Correctifs