Importar clave pública desde github a la cuenta local de ubuntu

Importar clave pública desde github a la cuenta local de ubuntu

Estoy configurando un nuevo servidor Ubuntu (18.04) y durante la instalación noté que podía importar claves públicas desde github. Ya terminé la configuración y me gustaría crear más usuarios. Parece ideal seguir importando sus claves públicas desde github si es posible. ¿Hay alguna manera de activar esa función de importar claves desde un perfil público de github para un usuario fuera del proceso de instalación?

Respuesta1

Poco tiempo después de publicar la pregunta encontré la respuesta. Hay un comando especial ssh-import-idque puede importar claves ssh. Elpágina de manual para ssh-import-idlo explica bastante bien. Está alojado comossh-import-id en la plataforma de lanzamientotambién.

Uso básico:

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

Espero que esto ayude a otros.

Respuesta2

GitHub proporciona esto a través de unPunto final APIque puedes descargar y analizar. Desafortunadamente para nosotros, esto devuelve objetos en formato JSON, por lo que a veces es un poco difícil de analizar (especialmente en el shell).

Afortunadamente para nosotros, existe otro punto final para obtener las claves SSH públicas de un usuario:

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

Puede usar esto para wgetdescargar y agregar claves de manera realmente simple y sin ningún análisis:

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

Tenga en cuenta que para utilizar este comando, necesitará permisos de escritura en el directorio principal de ese usuario. También puedes usar opcionalmente tee -a, lo que sería más fácil si no se garantizan los privilegios:

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

información relacionada