Ma configuration de Git fonctionne bien sous Linux, mais lorsque j'essaie de configurer les choses sous Windows (en utilisant Git for Windows et TortoiseGit ), je ne sais pas où mettre ma clé privée SSH (ou, mieux encore, comment dire à ssh
où il se trouve). J'utilise l'option standard ssh.exe lors de l'installation de Git pour Windows. La configuration fonctionne bien si j'autorise l'authentification par mot de passe (au lieu de RSA) sur le serveur.
Réponses
Trop de publicités?Beaucoup de réponses le disent, mais pour moi pas assez vite !
dans Windows en utilisant msys (console standard de Windows) C:\Users\{you}\.ssh\id_rsa
En gros, il ne prend pas la peine de scanner les clés installées (du moins pas sur mon nouvel ordinateur portable) et a donc besoin spécifiquement de id_rsa
J'ai rencontré ce problème en voulant cloner des dépôts privés de travail en ruby MSYS CLI pour Windows 10 64-bit.
En lisant votre commentaire à la réponse de Declan, essayez d'abord d'ouvrir une invite de commande (Démarrer Exécuter cmd ), puis naviguez vers ce dossier git/bin et exécutez ssh-keygen
. Théoriquement, cela va générer une clé RSA et la placer dans le répertoire approprié. Il ne vous reste plus qu'à le trouver et à partager votre clé publique avec le monde entier.
La raison pour laquelle la fenêtre "clignote" est que Windows exécute le programme, et lorsqu'il s'exécute, il ferme l'invite de commande, pensant que vous en avez fini avec lui, alors que vous avez vraiment besoin de la sortie.
En utilisant la version 0.17 de Git Gui sous Windows, j'ai cliqué sur la commande de menu suivante : Aide Afficher la clé SSH .
Une boîte de dialogue intitulée Votre clé publique OpenSSH . J'ai généré une clé et l'ai copiée dans le presse-papiers. Puis j'ai continué à suivre les instructions de setup-ssh sur githelp de Troisième étape en cours. Ensuite, Git Gui a communiqué avec GitHub de manière silencieuse - pas besoin d'entrer des informations d'identification.
Une erreur que j'ai commise lors de l'utilisation de SSH sous Windows est que, lorsque j'ai tenté d'utiliser les clés par le biais du client Git Bash, tous les fichiers de ~/.ssh n'avaient pas les bonnes permissions, mais il n'a pas essayé de me signaler le problème.
À titre de test, assurez-vous d'avoir attribué un chmod de 600 à tous les éléments de votre répertoire ~/.ssh.
0 votes
J'ai le même problème, je peux me connecter à ma boîte de développement en utilisant une clé publique en tant que "root" en utilisant le programme "Git Bash" qui est installé avec "Git For Windows" mais je ne peux pas me connecter en tant que "git" avec ma clé même si j'ai copié mon fichier "authorized_keys" de mon "root" vers mon utilisateur "git" et que j'ai défini les propriétaires et les permissions correctement. Pourquoi ne puis-je pas me connecter en tant que "git" alors que "root" fonctionne avec exactement le même fichier "authorized_keys". Au lieu de cela, pour "git", il transmet toutes les clés privées, qui sont exactement les mêmes que celles qui fonctionnent avec "root" et demande un mot de passe. Au fait, il s'agit d'un serveur Centos 5.5.
0 votes
@fuzzy lollipop : Avez-vous les bonnes permissions sur le fichier authorized_keys de votre utilisateur git ? Il devrait être chmod 600, et devrait appartenir à l'utilisateur git. S'il appartient à l'utilisateur root, cela ne fonctionnera pas.
0 votes
Oui tous les fichiers et répertoires ont les propriétaires et les permissions corrects