如何在 Ubuntu 和 Debian 上导入 GPG 密钥(无需 apt-key)

2023-11-09

最新的基于 Debian 的系统已弃用 apt-key 命令。此命令用于将 GPG 签名密钥导入系统。这个命令在 Debian 10 及其衍生版本之前一直运行良好。 Debian 11(及其衍生版本,如 Ubuntu 22.04)发布后,用户在密钥导入期间开始在屏幕上收到警告消息。您将看到警告消息“警告:apt-key 已弃用。改为管理 trust.gpg.d 中的密钥环文件(请参阅 apt-key(8))”。由于这是一条警告消息,您仍然可以使用 apt-key 命令,但较新版本的 Debian 和 Ubuntu 将删除对此命令的支持。

所以,升级我们自己并开始使用signed-by用于维护 GPG 密钥和存储库。在本文中,我们将讨论如何将 GPG 存储库签名密钥安全地导入到 Ubuntu、Debian、Linux Mint 和 Pop!_OS 等操作系统中。

在没有 apt-key 的情况下配置 GPG 密钥

您可以使用 wget 或 curl 命令在系统上下载 OpenPGP 密钥。然后dearmor密钥并将其保存到您的系统中。例如,我们需要在我们的系统上配置Webmin PPA。然后,首先我必须使用以下命令之一安装 GPG 密钥:

  • 使用 wget 命令:
    wget -O- https://download.webmin.com/jcameron-key.asc | sudo gpg --dearmor | sudo tee /usr/share/keyrings/jcameron-key.gpg > /dev/null 2>&1 
    
  • 使用curl命令:
    curl https://download.webmin.com/jcameron-key.asc | gpg --dearmor | sudo tee /usr/share/keyrings/jcameron-key.gpg > /dev/null 2>&1
    

上述命令将在以下位置创建一个文件/usr/share/keyrings/jcameron-key.gpg在您的系统上。现在,您已经在系统上成功配置了 GPG 密钥。

Adding GPG key on Ubuntu 22.04
Configure gpg key with dearmor

接下来,在文本编辑器中编辑 Webmin PPA 文件,并使用上面创建的文件对其进行配置,如下所示:


文件:/etc/apt/sources.list.d/webmin.list
deb [signed-by=/usr/share/keyrings/jcameron-key.gpg] https://download.webmin.com/download/repository sarge contrib

保存文件并关闭它。

Configure PPA with signed-by option
Configure PPA with signed-by option

结论

就是这样。您已成功在系统上使用 GPG 密钥配置了新的 PPA。在 Ubuntu 22.04 和 Debian 11 系统中,使用 GPG 密钥的新方式是可选的。由于它关系到系统安全,从下一个版本开始,这将是强制性的。因此,继续以这种方式练习是个好主意。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Ubuntu 和 Debian 上导入 GPG 密钥(无需 apt-key) 的相关文章

随机推荐

  • 计算机丢失msvcp110.dll是什么意思?如何修复?

    在修复msvcp110 dll文件的过程中 我经历了一些挑战 但也获得了一些宝贵的经验和感悟 首先 我意识到在遇到msvcp110 dll错误时 不要恐慌 这个问题并不是无解的 只要我们能够采取正确的方法和步骤 很有可能解决它 其次 我学会
  • 共用一块存储union

    2017 02 14 举一个不恰当的例子 你想用二叉树来做表达式树 但是里面既有运算符又有运算数 但是存储节点里面只能有一种类型 不过好在这个还好分析 那就是我只需要判断他是不是叶子就可以知道这个节点里的存储信息 就可以用union的方式来
  • JAVA项目开发之文档篇

    项目开发过程中为了增加程序的可读性和程序的健壮性 方便后期程序的调试和维护 所以需要在开发过程中统一技术规范 一般会在项目初期确定好相关文档作为这一统一的规范 不同公司会对文档做不同要求 划不同的分类 但一般来说 或者拿自己的经验说 大致可
  • loadrunner解决“服务器正在运行中”方法

    loadrunner解决 服务器正在运行中 方法 问题现象 这个问题在上家公司遇见过 今天无意中找到了解决办法 解决方法 打开任务管理器 找到这个进程 ThumbProcess exe 关掉这个进程即可解决
  • SQLi LABS Less-30

    第30关使用GET请求传递参数 在url中构造payload即可 后端源码中并没有做什么过滤 只是在参数两边添加了双引号 输入 1 and true a 页面正常显示 输入 1 and false a 页面空显示 由此可证明存在SQL注入
  • 如何使用 RVM 在 CentOS 和 RHEL 上安装 Ruby 2.1.8

    Warning Ruby 2 1 is reached to end of life and no more maintained Kindly use below tutorials to install latest version o
  • Linux 中的 /etc/mtab 文件是什么

    The etc mtab文件是Linux操作系统中的一个重要组成部分 它包含当前挂载的文件系统的记录 包括设备名称 挂载点和文件系统类型 各种 Linux 命令和实用程序使用此文件中的信息来确定已安装文件系统的状态 etc mtab 文件是
  • 在 Linux 上设置 HTTP 代理:基本指南

    在当今互联的世界中 网络在我们的数字生活中发挥着至关重要的作用 许多 Linux 用户必须处理的网络的一个重要方面是设置 HTTP 代理 本文将指导您完成在 Linux 系统上配置 HTTP 代理的过程 什么是 HTTP 代理 在深入了解该
  • Git Reset:带有示例的综合指南

    Git 是任何软件开发人员不可或缺的工具 它提供了管理和跟踪源代码更改的有效方法 在它的各种命令中 git reset 是一个功能强大的命令 它有助于浏览项目的历史记录 更改提交 甚至丢弃更改 尽管它很实用 但理解起来可能有点混乱 尤其是对
  • 关于将 WordPress 网站迁移到 HTTPS 您需要了解的一切

    Google has been pretty adamant in its efforts to make the web more secure First by proposing that web browsers should st
  • 如何使用 JavaScript forEach() 方法

    JavaScript forEach 方法对数组中的每个元素运行一次 例如 导航到数组并对每个数组元素执行任何操作 JavaScript forEach 方法在这种情况下很有用 JavaScript forEach 方法使用以下语法 arr
  • ZSH 和 BASH 有什么区别?

    当我们浏览类 Unix 操作系统的世界时 我们会遇到不同的 shell 环境 每个环境都有其独特的特性和功能 两种常用的 shell 环境是 Bash Bourne Again Shell 和 Zsh Z Shell 在本文中 我们将深入探
  • 如何在 Linux 中设置/创建环境和 Shell 变量

    Shell 是操作系统的命令解释器 处理在命令行中输入的命令 在 Linux 中广泛使用 变量就像指向特定数据的指针 并保存可以是任何值的特定值 用户可以在 Shell 的帮助下创建 删除或分配变量 当 Shell 运行时 存在三种类型的变
  • 如何在 Ubuntu 16.04 中将 Unity 启动器移动到底部

    将 Unity 启动器移至底部 Ubuntu 16 04 还提供了将 Unity 启动器移动到底部的选项 Ubuntu 早期版本不提供此选项 但现在我们可以将 unity 启动器移动到底部或左侧 本教程将帮助您在 Ubuntu 16 04
  • 什么是 JavaScript 闭包及其示例?

    JavaScript 是一种多功能编程语言 支持多种编程范例 JavaScript 最强大的功能之一是闭包 它允许开发人员创建强大而灵活的代码 在本文中 我们将探讨什么是闭包以及它们如何工作 并提供一些示例 JavaScript 中的闭包是
  • 如何在 Ubuntu 16.04、14.04 和 LinuxMint 18 中安装 Filezilla

    文件齐拉是最流行的跨平台 开源 ftp 客户端 FileZilla 可用作 FTP FTPS 和 SFTP 客户端 具有许多功能和直观的图形用户界面 以下是 FileZilla 的一些主要功能 访问以下网址在 Linux 系统上安装和配置
  • 在 Ubuntu 中设置启动和关闭脚本

    Linux 操作系统的强大功能之一是能够通过在启动 关闭或重新启动时运行脚本来控制系统的行为 本文作为在 Ubuntu Linux 中设置这些脚本的实用指南 从自动化日常任务到初始化服务 潜在的用例几乎是无限的 让我们深入探讨如何利用此功能
  • 用于备份 SQL Server 数据库的 PowerShell 脚本

    数据库管理是任何依赖数据存储和检索的应用程序的一个关键方面 确保数据完整性和可用性至关重要 此过程中最基本的步骤之一是创建 SQL Server 数据库的定期备份 在本文中 我们将演示如何创建一个 PowerShell 脚本 该脚本可自动执
  • 如何在 MacOS 上安装 Node.js

    Node js 是一个强大的 JavaScript 运行时环境 允许您在服务器端执行 JavaScript 它广泛用于开发可扩展的 Web 应用程序 命令行工具等 在本文中 我们将介绍在 macOS 系统上安装 Node js 的过程 先决
  • 如何在 Ubuntu 和 Debian 上导入 GPG 密钥(无需 apt-key)

    最新的基于 Debian 的系统已弃用 apt key 命令 此命令用于将 GPG 签名密钥导入系统 这个命令在 Debian 10 及其衍生版本之前一直运行良好 Debian 11 及其衍生版本 如 Ubuntu 22 04 发布后 用户