将公钥从github导入到本地ubuntu账户

将公钥从github导入到本地ubuntu账户

我正在设置一个新的 Ubuntu (18.04) 服务器,并在安装过程中注意到我可以从 github 导入公钥。我现在已经完成设置,并想创建更多用户。如果可能的话,继续从 github 导入他们的公钥似乎是理想的选择。有没有办法在安装过程之外为用户触发从公共 github 配置文件导入密钥的功能?

答案1

发布问题后不久,我找到了答案。有一个特殊命令ssh-import-id可以导入 ssh 密钥。ssh-import-id 的手册页解释得很好。它的托管地址是启动板上的 ssh-import-id也一样。

基本用法:

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

我希望这对其他人有帮助。

答案2

GitHub 通过API 端点您可以下载并解析。不幸的是,这确实会返回 JSON 格式的对象,因此有时解析起来有点困难(尤其是在 shell 中)。

幸运的是,还有另一个端点可以获取用户的公共 SSH 密钥:

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

您可以使用它来wget非常简单地下载和附加密钥,无需任何解析:

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

请注意,要使用此命令,您需要对该用户的主目录具有写入权限。您也可以选择使用tee -a,如果权限无法保证,这会更容易:

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

相关内容