Wenn Du noch keinen SSH-Schlüssel besitzt, musst Du einen neuen SSH-Schlüssel erzeugen. Wenn Du unsicher bist, ob Du bereits einen SSH-Schlüssel besitzt, suche nach vorhandenen Schlüssel.
Wenn Du bei der Verwendung Deines SSH-Schlüssels Deine Passphrase nicht jedes mal erneut eingeben möchtest, kannst Du den Schlüssel zum SSH-Agenten hinzufügen, der Deine SSH-Schlüssel verwaltet und Deine Passphrase speichert.
Einen neuen SSH-Schlüssel erzeugen
-
Öffne TerminalTerminalGit Bash.
-
Füge den folgenden Text ein, und ersetzte dabei Deine GitHub Enterprise Server-E-Mail-Adresse.
$ ssh-keygen -t ed25519 -C "your_email@example.com"
Note: If you are using a legacy system that doesn't support the Ed25519 algorithm, use:
$ ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
> Generating public/private ed25519 key pair.
-
Wenn die Aufforderung „Enter a file in which to save the key“ (Datei angeben, in der der Schlüssel gespeichert werden soll) angezeigt wird, drücke die Eingabetaste. Dadurch wird der Standard-Speicherort akzeptiert.
> Enter a file in which to save the key (/Users/you/.ssh/id_ed25519): [Press enter]
> Enter a file in which to save the key (/c/Users/you/.ssh/id_ed25519):[Press enter]
> Enter a file in which to save the key (/home/you/.ssh/id_ed25519): [Press enter]
-
Gib bei der Eingabeaufforderung eine sichere Passphrase ein. Weitere Informationen findest Du unter „SSH-Schlüssel-Passphrasen verwenden“.
> Enter passphrase (empty for no passphrase): [Type a passphrase] > Enter same passphrase again: [Type passphrase again]
Deinen SSH-Schlüssel zum SSH-Agenten hinzufügen
Bevor Du einen neuen SSH-Schlüssel zum SSH-Agenten für die Verwaltung Deiner Schlüssel hinzufügst, musst Du überprüft haben, ob bereits SSH-Schlüssel vorhanden sind, und einen neuen SSH-Schlüssel erzeugt haben. Wenn Du Deinen SSH-Schlüssel zum Agenten hinzufügst, verwende den standardmäßigen macOS-Befehl 'ssh-add‘ und nicht eine Anwendung, die von macports, homebrew oder einer anderen externen Quelle installiert wurde.
-
Starte den SSH-Agenten im Hintergrund.
$ eval "$(ssh-agent -s)" > Agent pid 59566
-
Wenn Sie macOS Sierra 10.12.2 oder höher verwenden, müssen Sie die Datei
~/.ssh/config
bearbeiten, damit automatisch Schlüssel in den ssh-agent geladen und Passphrasen in der Keychain gespeichert werden.-
Überprüfe zunächst, ob Deine
.ssh/config
-Datei am Standardspeicherort vorhanden ist.$ open ~/.ssh/config > The file /Users/you/.ssh/config does not exist.
-
Wenn die Datei nicht existiert, musst Du sie erstellen.
$ touch ~/.ssh/config
-
Open your
~/.ssh/config
file, then modify the file, replacing~/.ssh/id_ed25519
if you are not using the default location and name for yourid_ed25519
key.Host * AddKeysToAgent yes UseKeychain yes IdentityFile ~/.ssh/id_ed25519
-
-
Fügen Sie Ihren privaten SSH-Schlüssel zu ssh-agent hinzu, und speichern Sie Ihre Passphrase in der Keychain. Wenn Du Deinen Schlüssel mit einem anderen Namen erstellt hast, oder wenn Du einen vorhandenen Schlüssel mit einem anderen Namen hinzufügst, ersetze id_rsa im Befehl durch den Namen Deiner Privatschlüssel-Datei.
$ ssh-add -K ~/.ssh/id_ed25519
Hinweis: Die Option
-K
ist die Standardversion vonssh-add
von Apple, bei der die Passphrase für das Hinzufügen eines SSH-Schlüssels zum SSH-Agenten in Deiner Keychain gespeichert wird.Wenn Sie die Standardversion von Apple nicht installiert haben, tritt möglicherweise ein Fehler auf. Weitere Informationen zum Beheben dieses Fehlers finden Sie unter Fehler: „ssh-add: illegal option -- K““.
Wenn Sie GitHub Desktop installiert haben, können Sie die Lösung verwenden, um Repositorys zu klonen und um nicht mit SSH-Schlüsseln zu arbeiten.
-
Stellen Sie sicher, dass ssh-agent ausgeführt wird. You can use the "Auto-launching the ssh-agent" instructions in "Working with SSH key passphrases", or start it manually:
# Den SSH-Agenten im Hintergrund starten $ eval $(ssh-agent -s) > Agent pid 59566
-
Fügen Sie Ihren privaten SSH-Schlüssel zu ssh-agent hinzu. Wenn Du Deinen Schlüssel mit einem anderen Namen erstellt hast, oder wenn Du einen vorhandenen Schlüssel mit einem anderen Namen hinzufügst, ersetze id_rsa im Befehl durch den Namen Deiner Privatschlüssel-Datei.
$ ssh-add ~/.ssh/id_rsa
-
Starte den SSH-Agenten im Hintergrund.
$ eval "$(ssh-agent -s)" > Agent pid 59566
-
Fügen Sie Ihren privaten SSH-Schlüssel zu ssh-agent hinzu. Wenn Du Deinen Schlüssel mit einem anderen Namen erstellt hast, oder wenn Du einen vorhandenen Schlüssel mit einem anderen Namen hinzufügst, ersetze id_rsa im Befehl durch den Namen Deiner Privatschlüssel-Datei.
$ ssh-add ~/.ssh/id_rsa