我正在设置一个新的Ubuntu (18.04)服务器,并注意到在安装期间,我可以从github导入公钥。我现在已经完成了设置,并希望创建更多的用户。如果可能的话,继续从github导入他们的公钥似乎很理想。是否有一种方法可以触发从公共github配置文件导入密钥的功能,以供安装过程之外的用户使用?
发布于 2019-05-22 19:24:29
发完这个问题后不久,我找到了答案。有一个特殊的命令ssh-import-id
可以导入ssh键。ssh-import-id手册页很好地解释了这一点。它也作为ssh-启动板上的导入id托管。
基本用法:
# import keys from github
ssh-import-id-gh <username>
我希望这对其他人有帮助。
发布于 2019-05-21 22:09:50
GitHub通过可以下载和解析的API端点提供这一点。不幸的是,这确实以JSON格式返回对象,因此有时解析起来有点困难(特别是在shell中)。
幸运的是,还有另一个端点可以获取用户的公共SSH密钥:
https://github.com/<username>.keys
您可以使用它与wget
一起下载和附加键,非常简单,不需要任何解析:
wget -O - https://github.com/myuser.keys >> /home/myuser/.ssh/authorized_keys
请注意,为了使用此命令,您将需要对该用户的homedir的写权限。您也可以选择使用tee -a
,如果不能保证特权,这将更容易:
wget -O - https://github.com/myuser.keys | sudo tee -a /home/myuser/.ssh/authorized_keys
https://askubuntu.com/questions/1145189
复制相似问题