2009-07-22 20 views
22

J'ai récemment installé un serveur interne de référentiel git et l'ai installé et installé avec gitosis installé comme outil de gestion. L'accès en lecture seule est disponible via le protocole git: // et l'accès en écriture est disponible via gitosis en utilisant les clés publiques ssh.Est-il possible d'utiliser la même paire de clés privée/publique ssh sur 2 machines pour accéder à un référentiel git?

J'ai un développeur qui a été autorisé à accéder à ses projets avec une clé publique générée sur son poste de travail.

Il souhaite maintenant accéder à ce référentiel à partir de son ordinateur portable en utilisant la même paire de clés ssh. Il a copié le dossier .ssh dans son intégralité à son ordinateur portable et a essayé de cloner à partir du référentiel sans succès.

Est-ce que c'est une chose à essayer?

Une paire de clés ssh doit-elle être générée par machine? Cela semble bizarre car il faudrait effectivement ajouter un nom d'utilisateur par machine à la configuration de la gitose.

Toute aide serait appréciée.

+1

Nous avons prouvé que la copie des clés ssh vers d'autres machines fonctionne comme indiqué. Nous pensons maintenant que cela peut être plus d'un problème réseau/VPN. Merci pour les réponses. – Lou

+0

Le nom d'utilisateur du développeur est-il le même sur les deux machines client? – Nate

+0

Non, ils ne le sont pas, mais je ne pense pas que cela compte dans ce cas. La commande git clone utilisée spécifie git @ dans la ligne de commande. L'accès se fait donc via l'utilisateur git générique à la fin du dépôt. – Lou

Répondre

22

Oui je pense que vous pouvez.

J'ai quelque chose de similaire. Deux machines, une Intel (bureau) l'autre Sparc. Je peux me connecter aux deux machines et accéder au même serveur CVS (une autre machine) en utilisant l'accès SSH avec la même paire de clés qui a été générée sur la machine Intel.

Assurez-vous que lorsque vous copiez sur votre clé privée, vous définissez correctement les autorisations du répertoire .ssh (0700) et que votre répertoire personnel ne peut pas être accessible en écriture de groupe ou en écriture universelle. L'id_rsa devrait seulement avoir l'accès en lecture d'utilisateur (0400)

+2

En outre, dans mon expérience noobish: J'ai dû copier la clé publique plus '' un seul espace plus mon nom d'utilisateur/email dans le fichier id_rsa.pub sur l'autre machine. Note: J'ai d'abord lancé ssh-keygen dans le répertoire .ssh sur Snow Leopard Mac OS 10.6.4. exemple: [..certains trucs de cryptographie ...] == [[email protected]] * les parenthèses ci-dessus signifient ** remplacer le texte à l'intérieur de celles-ci ** – mkelley33

+0

Intéressant, je n'ai jamais eu à modifier le id_rsa.pub. Ce doit être une anomalie OSX. – Matt

10

Oui, c'est parfaitement légitime. Les clés ssh ne se soucient pas de savoir où elles ont été générées, et c'est bien de les avoir sur plusieurs machines à la fois. Essayez de donner au client ssh l'option "-v" ou "-vv" (pour une sortie détaillée) et vérifiez le journal ssh du serveur pour déboguer le problème.