是否可以让 APT 接受“无效”证书?

Ale*_*lyn 15 apt certificates kali-linux

我今天发现了一些有趣的事情。所以,我有 Kali Linux,我正在尝试使用 repo http://http.kali.org/kali完全更新系统。一切都很好,直到我因后门工厂和 mimikatz 被 403 拒绝。起初我以为这是服务器配置错误,所以忽略了它,但后来我很好奇并决定将 URL 弹出到 Firefox 中。果然,我的大学阻止了这些特定的 URL,但不阻止 repo 中的任何其他内容。

我决定检查是否可以在 https 中加载 URL(是的,我知道这是一个很长的镜头,因为大多数(afaik)APT 服务器甚至根本不支持 https)并发现它确实有效,但只有在接受时archive-8.kali.org 的证书。(是的,我知道无效的证书不好,但我想如果它使用 GPG 来检查有效性并且它使用没有加密的 http,那为什么不呢)。

另外,我知道我可以只使用https://archive-8.kali.org/kali代替旧的 url 并且已经这样做了,但是我询问接受无效证书的原因是因为这个只是切换域的解决方案是不可能的。

n.s*_*.st 25

您可以为 HTTPS 传输配置某些参数/etc/apt/apt.conf.d/-man apt.conf有关详细信息,请参阅(“获取组”部分,“https”小节)。
还有一个有用的例子在过trusted-apt项目。

例如,您可以完全禁用证书检查:

// Do not verify peer certificate
Acquire::https::Verify-Peer "false";
// Do not verify that certificate name matches server name
Acquire::https::Verify-Host "false";
Run Code Online (Sandbox Code Playgroud)

... 或仅针对特定主机:

Acquire::https::repo.domain.tld::Verify-Peer "false";
Acquire::https::repo.domain.tld::Verify-Host "false";
Run Code Online (Sandbox Code Playgroud)

这些选项应该放在一个新创建的文件中,/etc/apt/apt.conf.d/这样它们就不会干扰官方包安装的选项(这将创建自己的单独文件)。
文件名决定了解析选项文件的顺序,因此您可能希望选择一个相当高的数字,以便在其他软件包安装的选项之后解析您的选项。试试80ssl-exceptions,例如。

  • `apt -o“获取::https::Verify-Peer=false”更新` (8认同)

mr.*_*lle 24

对于临时解决方案,您可以执行以下操作:

apt -o "Acquire::https::Verify-Peer=false" update
apt -o "Acquire::https::Verify-Peer=false" install curl
Run Code Online (Sandbox Code Playgroud)