yum 更新 nss

yum 更新 nss

我已经virtio-win.repo根据此添加了指导. 的内容/etc/yum.repo.d/virtio-win.repo现在是

[virtio-win-stable]
name=virtio-win builds roughly matching what was shipped in latest RHEL
baseurl=http://fedorapeople.org/groups/virt/virtio-win/repo/stable
enabled=1
skip_if_unavailable=1
gpgcheck=0

[virtio-win-latest]
[virtio-win-source]

最后两个[]选项与第一个类似(这不是我的问题)。现在,当我运行 时yum makecache,我收到此错误

http://fedorapeople.org/groups/virt/virtio-win/repo/stable/repodata/repomd.xml: [Errno 14] problem making ssl connection

我尝试wget http://fedorapeople.org/groups/virt/virtio-win/repo/stable/repodata/repomd.xml手动运行,但它建议我添加--no-check-certificatewget解决问题。

我想知道如何在中添加该选项/etc/yum.repo.d/virtio-win.repo

答案1

对于一个 repo,您​​可以在 repo 配置中添加以下内容:

sslverify=0

对于所有 repos,您都可以将以下内容添加到“/etc/yum.conf”:

sslverify=false

答案2

在 CentOS 7.5 上,运行此命令有效:

yum-config-manager --save --setopt=<REPONAME>.sslverify=false

答案3

SSL 检查是有原因的。禁用 SSL 证书检查确实很危险。我更喜欢这种方法:我的一个客户的环境设置不正确,代理服务器的 SSL 证书签署了每个站点的每个 SSL 证书。为了验证这是问题所在,我运行

curl https://www.google.com

失败了,因此,使用 openssl-client 通过一个命令获取证书

openssl s_client -showcerts -servername www.google.com -connect www.google.com:443 > cacert.pem

大文件中间有服务器证书,复制它,并将其保存到新文件中,我们将其命名为 mycert.pem。证书以 Begin Certification 开头,以 End of Certification 结尾

让我们测试一下以验证

curl https://www.google.com --cacert mycert.pem

如果有效,则问题已解决。我们需要做的就是将其添加到 curl 用作受信任存储库的存储库中。要获取证书的位置,请执行以下操作

strace curl https://www.google.com |& grep open

有很多输出,但就在结尾附近我看到:open(“/etc/ssl/certs/578d5c04.0”, O_RDONLY) = 4

这是存储我的证书的地方。然后只需附加先前获得的文件即可。

echo "#Added by me , the client\'s certificate" >> /etc/pki/tls/certs/ca-bundle.crt
cat mycert.pem >> /etc/pki/tls/certs/ca-bundle.crt

然后再次使用 curl 进行测试,现在没有证书作为选项

curl https://www.google.com

它应该获得证书。

答案4

在 Centos 6 上,需要更新 nss

yum 更新 nss

错误“... [Errno 14] 建立 SSL 连接时出现问题”不再发生

相关内容