git sagen welcher SSH-Key genutzt werden soll
In diesem Artikel möchte ich Euch zeigen, wie Ihr Git mitteilen könnt, welcher Eurer SSH-Keys verwendet werden soll. Es ist sehr sinnvoll, mehrere SSH-Keys für verschiedene Anwendungen zu benutzen, z.B. einen Key für die Arbeit, einen anderen für Privates und einen zur Administration des eigenen Servers und so weiter…
Da SSH sich normalerweise nur mit dem Standardkey unter /home/USER/.ssh/id_rsa authentifiziert, müssen wir bei mehreren SSH-Keys in unserem .ssh-Verzeichnis Anwendungen wie Git mitteilen, welchen Key diese nun verwenden sollen.
Dies können wir machen, indem wir uns die Funktionen von der SSH config-Datei zu Nutze machen. Diese Datei muss, falls noch nicht passiert, zuerst im Verzeichnis /home/USER/.ssh angelegt werden. Wenn ihr einen Editor wie nano oder vim verwendet, wird die Datei beim Speichern automatisch angelegt, falls sie noch nicht existierte.
vim ~/.ssh/config
In die Datei kommt dann folgendes:
Host git Hostname deineGitDomain.tld Port 22 User DeinUserName IdentityFile /home/user/.ssh/deinGitKey
Die Parameter müsst Du natürlich an dich anpassen.
Der Host, in diesem Falle git, ist der Hostname, wie er nun intern genutzt wird, um sich an dem Server anzumelden.
Der Hostname ist der Hostname (also die Domain), unter der du deinen Git-Server erreichen kannst (z.B. deineGitDomain.tld oder auch github.com)
Der Port ist der Port, auf dem der Git-SSH-Server läuft.
IdentityFile ist der Pfad zu dem SSH-Key, welchen du verwenden möchtest.
Damit nun diese Konfiguration beim pullen und pushen eines Repositories verwendet wird, muss der Link des Repositories angepasst werden. Dazu schreibt Ihr den Link so um, dass nach dem @ nun ein git steht.
Aus ssh://git@deineGitDomain.tld:22/DeinNutzername/DeinRepository.git
wird also ssh://git@git/DeinNutzername/DeinRepository.git
Da die Portangabe auch bereits in der config-Datei steht, müssen wir diese nun nicht mehr angeben.
Nun kann wieder wie gewohnt gepullt und gepusht werden. Nur bei bereits geklonten Repositories muss die bisherige URL durch die neue ersetzt werden:
Mit
git remote remove origin
wird die alte URL entfernt und mit
git remote add origin ssh://git@git/DeinNutzername/DeinRepository.git
die neue eingetragen.
Ich hoffe, dass ich dem einen oder anderen mit diesem Beitrag helfen konnte. Wenn es Fragen gibt, schreibt mir doch einfach einen Kommentar unter diesen Artikel.
Neueste Kommentare