60

我正在尝试将我的暂存存储库推oss.sonatype.org送到中央存储库,但是此操作失败了,并且出现了以下异常

Event: Failed: Signature Validation
typeId  signature-staging
failureMessage  No public key: Key with id: (XXXXX) was not able to be located on http://keyserver.ubuntu.com:11371. Upload your public key and try the operation again.

我曾经gbp为我生成公钥和私钥,我什至使用以下命令将公钥发送到服务器

gpg --keyserver hkp://pool.sks-keyservers.net --send-keys EE539F98

我仍然遇到同样的异常。我交叉检查并且只有一个Sub Key,不确定我还需要做什么来推送公钥,以便可以通过 nexus 找到

4

4 回答 4

60

各种 OpenPGP 密钥服务器同步,但这需要一些时间。如果您知道将查询哪个密钥服务器,您可以直接在那里上传您的密钥。

我做了:

gpg --keyserver hkp://pool.sks-keyservers.net --recv-keys EE539F98
gpg --keyserver hkp://keyserver.ubuntu.com --send-keys EE539F98

现在您的密钥可以在 Ubuntu 的密钥服务器上成功找到,而无需等到它自动同步。

实际上,我多次运行 recv-command 以在他们的池中找到一个已经拥有您的密钥的密钥服务器。

于 2013-10-19T07:30:14.107 回答
12

我收到错误消息:

没有公钥:无法在http://keyserver.ubuntu.com:port上找到 ID 为 (xxxx) 的密钥。上传您的公钥并再次尝试该操作。

然后我在控制台上输入以下命令:

gpg --keyserver hkp://keyserver.ubuntu.com --send-keys xxxx

(从主机名末尾删除 :port)它有效!

于 2015-10-06T06:03:09.580 回答
4

同样的事情,事情是:

  • 上传从我的笔记本电脑生成的密钥完美无缺
  • 上传从应用程序服务器生成的密钥效率不高,我没有收到任何错误消息,但密钥从未分发

也许我们的应用程序服务器阻止了这个请求,或者这个请求被 Sonatype 直接拒绝(如https://issues.sonatype.org/browse/OSSRH-6697中所述)

无论如何,我们找到了一个我想与你们分享的解决方法:

  • 在应用服务器上生成公钥

gpg --gen-key

  • 如果您已经有,请在本地文件夹/Users/you/.gnupg/中复制pubring.gpg文件
  • 在本地下载在您的应用程序服务器上生成的公钥pubring.gpg(例如使用 scp 命令),它应该位于您的应用程序服务器上的/home/username/.gnupg/文件夹中
  • 把它放在你的本地文件夹/Users/you/.gnupg/并发布这个密钥

gpg2 --list-keys

gpg2 --keyserver hkp://pool.sks-keyservers.net --send-keys KEYID

  • 现在应该发布密钥

gpg --keyserver hkp://pool.sks-keyservers.net --recv-keys KEYID

如果有帮助,请告诉我!

问候

于 2016-08-11T22:05:56.067 回答
0
gpg --keyserver hkp://keys.openpgp.org --send-keys your_public_key

然后我检索了一封电子邮件并在https://keys.openpgp.org/上检查了这个密钥

于 2021-02-11T09:07:34.913 回答