首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在RHEL 8中使用Ansible导入GPG密钥

如何在RHEL 8中使用Ansible导入GPG密钥
EN

Stack Overflow用户
提问于 2022-06-15 00:35:31
回答 1查看 1.4K关注 0票数 0

使用Ansible,如何将GPG密钥导入RHEL 8?

使用Ansible rpm_key模块,我试图导入在https://www.fireeye.com/company/security/keys.html中找到的FireEye GPG密钥--这是我的Ansible代码:

代码语言:javascript
复制
- name: Import the FireEye GPG Key from a file
  rpm_key:
    state: present
    key: /tmp/buildfiles/antivirus/fireeye-key.gpg

- name: Install FireEye Agent package
  yum:
    name: /tmp/buildfiles/antivirus/fireeye/xagt-34.28.6-1.el7.x86_64.rpm
    state: present

我复制了GPG密钥,并将其保存在Fireye-key.gpg中。通过直接复制,我得到了以下错误:

代码语言:javascript
复制
fatal: [default]: FAILED! => {"changed": false, "msg": "Failed to validate GPG signature for xagt-33.46.0-1.el7.x86_64"}

我的下一次尝试是删除GPG键的第二行和第二行中的空行。但是,这会产生以下错误:

代码语言:javascript
复制
fatal: [default]: FAILED! => {"changed": false, "msg": "gpg: directory '/root/.gnupg' created\ngpg: keybox '/root/.gnupg/pubring.kbx' created\ngpg: WARNING: no command supplied.  Trying to guess what you mean ...\ngpg: invalid armor header: mQINBFu7nVUBEADC6YSWxdVWbh3Aeh+2vkJpFeRe8hnvx38tUcbYqO9sm3y/NDTA\\n\ngpg: /root/.gnupg/trustdb.gpg: trustdb created\n"}

最初,Import the FireEye GPG Key from a file任务不存在,而Install FireEye Agent package任务产生了此错误:

代码语言:javascript
复制
fatal: [default]: FAILED! => {"changed": false, "msg": "Failed to validate GPG signature for xagt-34.28.6-1.el7.x86_64"}

正是由于这个错误,我使用‘`rpm_key’添加了Import the FireEye GPG Key from a file任务。

EN

回答 1

Stack Overflow用户

发布于 2022-06-15 02:34:07

我觉得钥匙的格式是错的,不是你自己的错。如果您从该网页复制并粘贴密钥,您将得到以下结果:

代码语言:javascript
复制
-----BEGIN PGP PUBLIC KEY BLOCK-----

mQINBFu7nVUBEADC6YSWxdVWbh3Aeh+2vkJpFeRe8hnvx38tUcbYqO9sm3y/NDTA
0fysb6ZBO/VYUQcQ4zRTGfytGzLmNPWrwBxcmEnLq5F/SQ1mOXxdjf2fIOhErVmD
kliJ96mS/iYV6Z700byMEAciZra5zyOvYSCAncrpDrVyk0mKpE9AZcSeBSUkamCB
...
TQz8S/+M2MtLTCqNppeWwWlTQlYKajTuLexiIfNEJeutzIkAdWowolVFqZhlkB+a
67fAMXnNqH87ipGypf/db3kspgs=
=LMuX

-----END PGP PUBLIC KEY BLOCK-----

如果您试图导入该键,它将失败:

代码语言:javascript
复制
# rpm --import fireeye.key
error: fireeye.key: key 1 not an armored public key.

如果您编辑该文件以删除-----END PGP PUBLIC KEY BLOCK行之前的空行,那么您可以:

代码语言:javascript
复制
-----BEGIN PGP PUBLIC KEY BLOCK-----

mQINBFu7nVUBEADC6YSWxdVWbh3Aeh+2vkJpFeRe8hnvx38tUcbYqO9sm3y/NDTA
0fysb6ZBO/VYUQcQ4zRTGfytGzLmNPWrwBxcmEnLq5F/SQ1mOXxdjf2fIOhErVmD
kliJ96mS/iYV6Z700byMEAciZra5zyOvYSCAncrpDrVyk0mKpE9AZcSeBSUkamCB
...
TQz8S/+M2MtLTCqNppeWwWlTQlYKajTuLexiIfNEJeutzIkAdWowolVFqZhlkB+a
67fAMXnNqH87ipGypf/db3kspgs=
=LMuX
-----END PGP PUBLIC KEY BLOCK-----

然后成功地导入。我相信这会纠正你在Ansible身上看到的错误。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72624761

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档