温馨提示×

centos怎么导入公钥

小樊
43
2026-07-21 09:55:39
栏目: 智能运维

在 CentOS 中“导入公钥”通常指 导入 GPG 公钥,用于 RPM 包校验、YUM/DNF 仓库验证 等场景。下面按常见场景给你说明。


一、导入 RPM / YUM 仓库的 GPG 公钥(最常见)

方法 1:使用 rpm --import(推荐)

sudo rpm --import /path/to/public.key

或直接从 URL 导入:

sudo rpm --import https://example.com/RPM-GPG-KEY-example

验证是否导入成功:

rpm -qa gpg-pubkey*

查看某个 key 的详细信息:

rpm -qi gpg-pubkey-xxxx

方法 2:YUM / DNF 自动导入(首次安装时)

当仓库配置了:

gpgcheck=1
gpgkey=https://example.com/RPM-GPG-KEY

执行:

sudo yum install package_name
# 或
sudo dnf install package_name

首次会提示是否导入公钥,输入 y 即可。


二、导入本地 RPM 包中的公钥

如果你有一个 .rpm 包自带公钥:

sudo rpm --import /path/to/package.rpm

三、手动导入 GPG 公钥到系统(非 RPM 场景)

适用于 git、ssh、加密通信 等场景。

1️⃣ 导入到 GPG 密钥环

gpg --import public.key

查看已导入的密钥:

gpg --list-keys

四、CentOS 7 / 8 / Stream 常见示例

示例:导入 EPEL 仓库公钥

sudo rpm --import https://dl.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-7

或:

sudo yum install epel-release

五、删除已导入的 GPG 公钥(如需要)

先查 key ID:

rpm -qa gpg-pubkey*

删除:

sudo rpm -e gpg-pubkey-xxxx

六、常见问题

❓ 导入后仍然报 GPG 错误?

  • 公钥版本不匹配
  • 仓库配置中 gpgkey 路径错误
  • 系统时间不正确

❓ CentOS 8 / Stream 用 dnf 还是 yum?

✅ 推荐用 dnf,但 yum 仍然可用(dnf 的软链接)


七、总结(快速命令)

# 导入公钥
sudo rpm --import https://example.com/RPM-GPG-KEY

# 查看
rpm -qa gpg-pubkey*

# 安装时自动导入
sudo yum install xxx

如果你能说明 具体场景(例如:某个软件源、Docker、Git、SSH、RPM 签名失败),我可以给你更精确的命令。

0