对基于HTTPS的内部APT存储库使用自签名SSL证书

Modified on: Wed, 04 Sep 2019 18:20:02 +0800

我已经建立了一个Debian存储库(实际上是Ubuntu),供内部使用一些私有软件包,现在希望通过Web将其提供给某些特定的服务器。我希望apt-get / aptitude使用HTTPS连接到它,因为我不想花任何钱使用自签名证书。

我已经尝试按照指向apt-get的apt.conf手册页来使用我自己的根CA证书来验证主机,但它似乎不起作用。

我的apt.conf文件如下所示:

#Acquire::https::repo.mydomain.com::Verify-Peer "false";
Acquire::https::repo.mydomain.com::CaInfo      "/etc/apt/certs/my-cacert.pem";
Acquire::https::repo.mydomain.com::SslCert     "/etc/apt/certs/my-cert.pem";
Acquire::https::repo.mydomain.com::SslKey      "/etc/apt/certs/my-key.pem";

我也使用客户端证书,但它似乎不是问题,因为当我将Verify-Peer设置为“false”(上面评论)时,一切正常。

使用相同的CA证书,客户端证书和密钥与curl配合良好。

我启用了apt调试(Debug :: Acquire :: https“true”),但它提供的信息很少。

有关如何进行的任何建议?

作者:shevron

最佳答案

希望这有助于其他人 - 我无法直接解决这个问题。

作为一种解决方法,我现在使用stunnel4创建到我的HTTPS存储库的隧道。自签名证书和客户证书我和stunnel4一起工作得非常好。

我已经设置stunnel来侦听localhost:8888以获取传入连接,并将它们引导到我的repo(repo.mydomain.com:443)。我已经设置了在http:// localhost:8888 /上寻找我的存储库。

到目前为止,这一直运作良好,虽然这似乎是一个不必要的黑客攻击。

作者:shevron

相关问答

添加新评论