Ich habe Debian, Fisheye und Git auf meinem Server. Meine Git-Repos werden von Fisheye verwaltet. Es gibt keine Authentifizierung im Fisheye-Teil. Alle Authentifizierungsverfahren werden von git verwaltet.
Ich möchte die SSH-Authentifizierung verwenden, damit ich Benutzername und Passwort nicht angeben muss, wenn ich meine Änderungen an den Server weiterleite. Ich weiß, wie man einen RSA-Schlüssel erstellt, aber wo kopiere ich meinen öffentlichen Schlüssel auf dem Server?
Der Schlüsselteil des Artikels “Git auf dem Server – Einrichten des Servers” ist:
Sie müssen einige öffentliche SSH-Entwicklerschlüssel zu hinzufügen ~/.ssh/authorized_keys
Datei für diesen Benutzer.
Nehmen wir an, Sie haben ein paar Schlüssel per E-Mail erhalten und in temporären Dateien gespeichert. Auch hier sehen die öffentlichen Schlüssel in etwa so aus:
$ cat /tmp/id_rsa.john.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCB007n/ww+ouN4gSLKssMxXnBOvf9LGt4L
ojG6rs6hPB09j9R/T17/x4lhJA0F3FR1rP6kYBRsWj2aThGw6HXLm9/5zytK6Ztg3RPKK+4k
Yjh6541NYsnEAZuXz0jTTyAUfrtU3Z5E003C4oxOj6H0rfIF1kKI9MAQLMdpGW1GYEIgS9Ez
Sdfd8AcCIicTDWbqLAcU4UpkaX8KyGlLwsNuuGztobF8m72ALC/nLF6JLtPofwFBlgc+myiv
O7TCUSBdLQlgMVOFq1I2uPWQOkOWQAHukEOmfjy2jctxSDBQ220ymjaNsHT4kgtZg2AYYgPq
dAv8JggJICUvax2T9va5 gsg-keypair
(Hinweis: Stellen Sie sicher, dass der Schlüssel angezeigt wird ein einzelne Zeile)
Sie hängen sie einfach an Ihre Datei “authorized_keys” an:
$ cat /tmp/id_rsa.john.pub >> ~/.ssh/authorized_keys
Wenn Sie keine haben authorized_keys
Datei auf Ihrem Server, erstellen Sie sie, aber achten Sie darauf, sie richtig zu schützen.
server$ mkdir ~/.ssh
server$ chmod 700 ~/.ssh
server$ cat ~/id_rsa.pub >> ~/.ssh/authorized_keys
server$ chmod 600 ~/.ssh/authorized_keys
server$ rm ~/id_rsa.pub
Ein konkretes Beispiel finden Sie unter „Erstellen von SSH-Schlüsseln für Gerrit und Hudson“.
- Stellen Sie sicher, dass sich git in dem PATH befindet, der von Ihrem ssh-Daemon verwendet wird.
- Stellen Sie sicher, dass alle übergeordneten Verzeichnisse Ihrer
~/.ssh
sind für die Gruppe nicht beschreibbar (chmod 755
nur).
Sie müssen Ihren öffentlichen Schlüssel darin einfügen ~/.ssh/authorized_keys
. Erstellen Sie die Datei, falls sie nicht vorhanden ist.