Github 公钥的公共 URL 是啥
Posted
技术标签:
【中文标题】Github 公钥的公共 URL 是啥【英文标题】:What is the public URL for the Github public keysGithub 公钥的公共 URL 是什么 【发布时间】:2013-04-16 00:10:14 【问题描述】:我听说 github 上的所有用户都有一个公共 URL,您可以在其中访问他们的公共密钥,或者他们可以提供所有公共密钥的 URL。这是真的?如果是这样,该 URL 是什么。 bitbucket 也存在吗?
【问题讨论】:
【参考方案1】:你可以得到:
curl https://github.com/<username>.keys
将<username>
替换为GitHub用户的实际用户名。
这在您设置其他服务器的登录权限时很有用。只需将其输出保存到~/.ssh/authorized_keys
。从命令行将其附加到末尾:
curl https://github.com/<username>.keys | tee -a ~/.ssh/authorized_keys
也可以使用 Github API 完成
curl -i https://api.github.com/users/<username>/keys
对于位桶,您可以使用以下内容:(此调用需要身份验证。)
curl -i https://bitbucket.org/api/1.0/users/<accountname>/ssh-keys
【讨论】:
如果我知道一个 git 公钥 URL,我怎样才能访问或克隆存储库? 这也适用于企业版的 github。例如/.keys @holmb,根据最新文档,此端点需要身份验证。我认为这随着时间的推移而改变,我不记得当我第一次发布这个答案时是这样的。 confluence.atlassian.com/bitbucket/…accountname/ssh-keys @fazras:请务必更新有关 BitBucket 更改的答案。谢谢。 @dzieciou 我不是 GitHub 管理员,但这听起来像是在某些组织中可能被禁用的东西。它仍然在我们的企业 GitHub 中打开。【参考方案2】:GPG 公钥现在可通过https://github.com/<username>.gpg
获得
【讨论】:
【参考方案3】:同样适用于 gitlab。
https://gitlab.com/<username>.keys
在 bash 脚本中也能很好地工作。
#GitProvider to fetch public keys (gitlab.com,github.com)
GitProvider="gitlab.com"
GitUsername="username"
curl https://$GitProvider/$GitUsername.keys | tee -a ~/.ssh/authorized_keys
【讨论】:
【参考方案4】:此外,这些还提供了一种检索用户 PGP 密钥的方法:
GitHub:
https://github.com/USER.keys
https://gitlab.com/USER.gpg
GitLab:
https://gitlab.com/USER.keys
https://gitlab.com/USER.gpg
【讨论】:
【参考方案5】:虽然密钥是公开,但您并不总是希望在默认注释字段中显示您的内部主机名,因此如果您有 SSH 密码访问权限,我建议您使用 ssh-copy-id
命令,@987654322 @ 首先使用控制台和配置管理工具(如 Ansible、Puppet 等)。
【讨论】:
以上是关于Github 公钥的公共 URL 是啥的主要内容,如果未能解决你的问题,请参考以下文章