2009-07-22 9 views
22

Ich habe kürzlich einen Inhouse-Git-Repository-Server eingerichtet und habe ihn als Management-Tool installiert, wobei Gitosis installiert ist. Schreibgeschützter Zugriff ist über das git: // - Protokoll verfügbar und der Schreibzugriff ist über Gitosis mit öffentlichen ssh-Schlüsseln verfügbar.Ist es möglich, dasselbe ssh private/public-Schlüsselpaar auf zwei Rechnern zu verwenden, um auf ein Git-Repository zuzugreifen?

Ich habe einen Entwickler, dem Zugriff auf seine Projekte mit einem öffentlichen Schlüssel gewährt wurde, der auf seiner Desktoparbeitsstation generiert wurde.

Er möchte nun von seinem Laptop mit demselben ssh-Schlüsselpaar auf dieses Repository zugreifen. Er hat den .ssh-Ordner in seiner Gesamtheit auf seinen Laptop kopiert und versucht, aus dem Repository erfolglos zu klonen.

Ist dies eine gültige Sache zu versuchen?

Muss ein ssh-Schlüsselpaar pro Maschine generiert werden? Dies scheint merkwürdig, da es tatsächlich erforderlich wäre, einen Benutzernamen pro Computer zur Gitosis-Konfiguration hinzuzufügen.

Jede Hilfe wäre willkommen.

+1

Wir haben bewiesen, dass das Kopieren der ssh-Schlüssel auf andere Maschinen wie vorgeschlagen funktioniert. Wir denken jetzt, dass dies eher ein Netzwerk-/VPN-Problem ist. Danke für die Antworten. – Lou

+0

Ist der Benutzername des Entwicklers auf beiden Client-Computern identisch? – Nate

+0

Nein sind sie nicht, aber ich denke nicht, dass das in diesem Fall zählt. Der verwendete git-clone-Befehl gibt git @ in der Befehlszeile an. Der Zugriff erfolgt also über den generischen git-Benutzer am Repository-Ende. – Lou

Antwort

22

Ja, ich denke du kannst.

Ich habe etwas ähnliches. Zwei Maschinen, ein Intel (Desktop) der andere Sparc. Ich kann mich an beiden Maschinen anmelden und auf denselben CVS-Server (eine andere Maschine) zugreifen, indem ich den SSH-Zugang mit dem gleichen Schlüsselpaar verwende, das auf dem Intel-Rechner erzeugt wurde.

Stellen Sie sicher, dass Sie beim Kopieren über Ihren privaten Schlüssel beide Berechtigungen für das Verzeichnis .ssh korrekt festlegen (0700) und Ihr Ausgangsverzeichnis nicht für Gruppen oder weltweit schreibbar ist. Das id_rsa sollte nur Benutzer Lesezugriff haben (0400)

+2

Auch in meiner noobish Erfahrung: Ich musste den öffentlichen Schlüssel plus '' ein einzelnes Leerzeichen plus meinen Benutzernamen/email zur id_rsa.pub Akte auf der anderen Maschine kopieren. Hinweis: Ich habe ssh-keygen auch zuerst im Verzeichnis .ssh auf Snow Leopard Mac OS 10.6.4 ausgeführt. Beispiel: [..eine Kryptographie stuff ...] == [[email protected]] * Klammern oben bedeuten ** Text in ihnen ersetzen ** – mkelley33

+0

Interessant, ich musste nie die id_rsa.pub ändern. Es muss eine OSX-Anomalie sein. – Matt

10

Ja, das ist vollkommen legitim. SSH-Schlüssel interessieren nicht, wo sie erzeugt wurden, und es ist in Ordnung, sie auf mehreren Maschinen gleichzeitig zu haben.

Versuchen Sie, dem SSH-Client die Option "-v" oder "-vv" (für eine ausführliche Ausgabe) zu geben und überprüfen Sie das ssh-Protokoll des Servers, um das Problem zu beheben.