web-dev-qa-db-fra.com

L'authenticité de l'hôte 'github.com (192.30.252.128)' ne peut pas être établie

J'essaye d'utiliser

Sudo npm install

installer toutes mes dépendances pour une application écrite en nodejs. Mon système d'exploitation est Ubuntu 13.04

Cependant, je reçois toujours cet avertissement:

The authenticity of Host 'github.com (192.30.252.131)' can't be established.
RSA key fingerprint is 16:27:ac:a5:76:28:1d:52:13:1a:21:2d:bz:1d:66:a8.
Are you sure you want to continue connecting (yes/no)?

Quelqu'un a-t-il déjà rencontré cet avertissement? Est-il possible d'authentifier et de stocker l'empreinte digitale localement? Je n'aurai donc pas besoin de m'authentifier à nouveau lorsque j'entrerai dans Sudo npm install une autre fois.

Pour l'instant, je ne peux rien saisir, pas même "oui". Mon terminal est bloqué, je dois appuyer sur ctrl + c pour terminer.

32
led

Danger à venir, sauf si vous ne vous souciez pas vraiment de la communication sécurisée avec github sur votre compte local

Ssh se plaint à juste titre qu'ils ne peuvent pas s'assurer que vous vous connectez bien au serveur de github via un canal sécurisé. C'est peut-être la raison pour laquelle github recommande l'accès https, qui fonctionne prêt à l'emploi grâce à son infrastructure à clé publique.

Maintenant, vous pouvez le faire fonctionner, mais sachez que cela implique de mettre en cache une empreinte digitale de clé publique qui, si elle n'est pas effectuée correctement, fournit une attaque permanente de l'homme du milieu.

Comment procéder en toute sécurité?

L'option 1 consiste à utiliser https url au lieu de ssh.

L'option 2 est d'avoir un travail d'accès ssh.

D'accord, montrez-moi l'option 2

Faire ssh github.com mais ne vous contentez pas de taper "oui". Vérifiez si le hachage affiché correspond à l'un des hachages indiqués dans https://help.github.com/articles/what-are-github-s-ssh-key-fingerprints/ (dans votre question, et voyez, la page est récupérée via https pour les mêmes raisons d'infrastructure à clé publique).

Si le hachage correspond, la connexion est en effet sûre, vous pouvez répondre "oui" à la question de ssh.

D'accord, j'ai vérifié et tapé oui, comment puis-je savoir que cela fonctionne?

Ssh affichera quelque chose comme:

Avertissement: Ajout permanent de la clé d'hôte RSA pour l'adresse IP "192.30.252.128" à la liste des hôtes connus.

Après cela, vous verrez soit un message comme

Autorisation refusée (publickey).

ce qui est bien mais montre que vous avez besoin d'une configuration supplémentaire, ou tout simplement

Salut yourlogin ! Vous vous êtes authentifié avec succès, mais GitHub ne fournit pas d'accès Shell.

ce qui signifie que tout fonctionne bien et que vous pouvez réessayer votre première opération.

Notez que si vous réessayez la même commande ssh, elle ne devrait plus poser la question.

28
Stéphane Gourichon

Courir ssh -o StrictHostKeyChecking=no [email protected] dans l'invite de commande pour ajouter l'authenticité à vos hôtes connus. Ensuite, vous ne recevrez pas l'invite la prochaine fois.

16
Kent Mewhort

Github vient d'apporter des modifications à son infrastructure d'adresses IP. Vous pouvez lire ici pour plus de détails https://github.com/blog/1606-ip-address-changes . De plus, je n'ai jamais vu un problème comme celui-ci auparavant. Est-ce que package.json contient une dépendance git clonée via ssh?

Essayez echo 'oui' | Sudo npm install. Cela peut résoudre votre problème. Si ce n'est pas le cas, essayez plutôt de cloner via HTTPS ou téléchargez le module en tant qu'archive tar, ce qui peut être fait comme ceci https://api.github.com/repos/ nom d'utilisateur / renommer /tarball

2
joshua-anderson

Vous êtes sûr que vous n'êtes pas connecté accidentellement en tant qu'utilisateur différent (cela m'arrive quand je Sudo -s/me connecte en tant que root et oublie que mon compte GitHub n'est pas lié à cet utilisateur).

2
Matt Pavelle

J'ai atterri ici parce que je recevais cette erreur et que je ne comprenais pas pourquoi. Il s'avère que j'avais une faute de frappe dans ma commande npm:

npm install -P -E @angular/common @angular/compiler @angular/core @angular/forms 
@angular/platform-browser @angular/router @angular/animations@ angular/platform-browser-dynamic

Remarquez comment la fin de la ligne se lit @angular/animations@ angular/platform-browser-dynamic.

NPM interprète le dernier "package" comme étant un dépôt github et c'est de là que vient l'erreur.

Je sais que cela ne en fait répond pas à la question, mais je l'ai posée juste au cas où quelqu'un d'autre rencontrerait cela en faisant une erreur similaire.

1
MarioDS