Importieren Sie den öffentlichen Schlüssel von GitHub in das lokale Ubuntu-Konto.

Importieren Sie den öffentlichen Schlüssel von GitHub in das lokale Ubuntu-Konto.

Ich richte einen neuen Ubuntu-Server (18.04) ein und habe während der Installation bemerkt, dass ich öffentliche Schlüssel von GitHub importieren konnte. Ich habe die Einrichtung nun abgeschlossen und möchte weitere Benutzer erstellen. Es scheint ideal, wenn möglich weiterhin ihre öffentlichen Schlüssel von GitHub zu importieren. Gibt es eine Möglichkeit, diese Funktion zum Importieren von Schlüsseln aus einem öffentlichen GitHub-Profil für einen Benutzer außerhalb des Installationsvorgangs auszulösen?

Antwort1

Kurz nachdem ich die Frage gestellt hatte, fand ich die Antwort. Es gibt einen speziellen Befehl ssh-import-id, mit dem man SSH-Schlüssel importieren kann. DerManpage für ssh-import-iderklärt es ganz gut. Es wird gehostet alsssh-import-id auf Launchpadsowie.

Grundlegende Verwendung:

# import keys from github
ssh-import-id-gh <username>

Ich hoffe, das hilft anderen.

Antwort2

GitHub stellt dies über eineAPI-Endpunktdie Sie herunterladen und analysieren können. Leider werden hier Objekte im JSON-Format zurückgegeben, sodass die Analyse manchmal etwas schwierig ist (insbesondere in der Shell).

Glücklicherweise gibt es einen weiteren Endpunkt, um die öffentlichen SSH-Schlüssel eines Benutzers abzurufen:

https://github.com/<username>.keys

Damit können Sie wgetganz einfach und ohne Parsen Schlüssel herunterladen und anhängen:

wget -O - https://github.com/myuser.keys >> /home/myuser/.ssh/authorized_keys

Beachten Sie, dass Sie zur Verwendung dieses Befehls Schreibberechtigungen für das Homedir dieses Benutzers benötigen. Sie können optional tee -aauch Folgendes verwenden, was einfacher wäre, wenn die Berechtigungen nicht garantiert sind:

wget -O - https://github.com/myuser.keys | sudo tee -a /home/myuser/.ssh/authorized_keys

verwandte Informationen