当前位置:首页 > Linux > 正文

Linux源公钥怎样安装?

获取公钥文件后,使用 apt-key add(Debian/Ubuntu)或 rpm --import(CentOS/RHEL)命令导入,确保公钥来源可信且拥有sudo权限。

在Linux系统中,源公钥(Repository GPG Key)用于验证软件包的完整性和来源真实性,防止恶意改动,安装公钥是安全使用第三方软件源的关键步骤,以下是详细操作指南:


公钥安装前的准备

  1. 获取公钥文件

    • 从软件源官网下载公钥(通常扩展名为 .asc 或 .gpg), wget -O- https://example.com/repo/key.gpg > key.asc
    • 或直接复制公钥字符串(以 -----BEGIN PGP PUBLIC KEY BLOCK----- 开头)。
  2. 确认系统权限

    需拥有 sudo 权限执行关键命令。


推荐安装方法(适用于现代系统)

方法1:将公钥复制到 /etc/apt/trusted.gpg.d/(Debian/Ubuntu)

# 下载公钥并复制到目标目录 sudo wget -O /etc/apt/trusted.gpg.d/<密钥名>.gpg https://example.com/repo/key.gpg # 示例:安装Docker公钥 sudo wget -O /etc/apt/trusted.gpg.d/docker.gpg https://download.docker.com/linux/ubuntu/gpg

方法2:使用 gpg 手动导入(通用)

# 下载公钥 curl -fsSL https://example.com/repo/key.gpg | sudo gpg --dearmor -o /usr/share/keyrings/<自定义名>.gpg # 示例:安装Kubernetes公钥 curl -fsSL https://pkgs.k8s.io/core:/stable:/v1.28/deb/Release.key | sudo gpg --dearmor -o /usr/share/keyrings/kubernetes.gpg


传统方法(不推荐,仅兼容旧系统)

使用已弃用的 apt-key(Debian/Ubuntu ≤ 20.04)

# 直接添加公钥 sudo apt-key add key.asc # 或通过URL添加 sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys <公钥ID>

️ 警告:apt-key 会将公钥添加到全局信任列表,存在安全风险,Ubuntu 22.04+ 已移除该命令。


验证公钥是否安装成功

  1. 检查目录内容

  2. 列出已安装公钥

    gpg --list-keys --keyring /usr/share/keyrings/<文件名>.gpg
  3. 更新软件源测试

    sudo apt update # 无报错即表示公钥生效
  4. 常见问题解决

    • 错误 NO_PUBKEY

      运行 sudo apt update 后若提示:

      解决

      sudo gpg --keyserver keyserver.ubuntu.com --recv-keys ABCDEF1234567890 sudo gpg --export --armor ABCDEF1234567890 | sudo apt-key add -

    • 错误 KEYEXPIRED

      公钥已过期,需从官网重新下载最新密钥。

      安全建议

      1. 仅信任官方来源

        从软件官网或开发者指定渠道获取公钥,避免中间人攻破。

      2. 优先使用 /usr/share/keyrings

        此目录权限更严格,比全局 /etc/apt/trusted.gpg.d 更安全。

      3. 定期更新公钥

        部分项目会定期轮换密钥,关注官方公告。


      正确安装源公钥是保障Linux系统安全的核心步骤,推荐使用 gpg --dearmor 导入到 /usr/share/keyrings/ 的现代方法,避免使用已弃用的 apt-key,操作前务必验证公钥来源,以维护系统的完整性和可信度。

      引用说明

0