最近发生了多个sha256sum失败或无法验证证书的实例。这种情况发生在使用wget、酒会和lutris时。这在firefox中根本没有发生过。
最近,我将openssl升级到1.1.1c。我不确定这是不是原因。
有没有人知道我该怎么解决我的问题?在安装openssl之后,我还需要做一些额外的事情吗?或者是否有一种方法来检查我在/etc/ssl/certs中的证书是否正确?
编辑1:
使用wget的两个示例
wget https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks
--2019-06-25 18:56:33-- https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks
Resolving raw.githubusercontent.com (raw.githubusercontent.com)... 151.101.184.133
Connecting to raw.githubusercontent.com (raw.githubusercontent.com)|151.101.184.133|:443... connected.
ERROR: cannot verify raw.githubusercontent.com's certificate, issued by ‘CN=DigiCert SHA2 High Assurance Server CA,OU=www.digicert.com,O=DigiCert Inc,C=US’:
Unable to locally verify the issuer's authority.
To connect to raw.githubusercontent.com insecurely, use `--no-check-certificate'.
和
wget https://dl.google.com/dl/android/studio/ide-zips/3.4.1.0/android-studio-ide-183.5522156-linux.tar.gz
--2019-06-25 19:08:19-- https://dl.google.com/dl/android/studio/ide-zips/3.4.1.0/android-studio-ide-183.5522156-linux.tar.gz
Resolving dl.google.com (dl.google.com)... 2607:f8b0:4009:807::200e, 172.217.9.78
Connecting to dl.google.com (dl.google.com)|2607:f8b0:4009:807::200e|:443... connected.
ERROR: cannot verify dl.google.com's certificate, issued by ‘CN=Google Internet Authority G3,O=Google Trust Services,C=US’:
Unable to locally verify the issuer's authority.
To connect to dl.google.com insecurely, use `--no-check-certificate'.
编辑2:
将ca_certificate=/etc/ssl/certs/ca-certificates.crt
添加到/etc/wgetrc
解决了wget的问题。不过,有时我对其他节目仍有意见。我想知道在我更新openssl时是否删除了一些系统链接。我应该指出,我是按照openssl网站上的说明从源代码构建openssl的。我没有使用包管理器,因为我需要的版本还没有到那里。
编辑3:
以下是lutris无法通过python 3 urllib验证证书的示例
2019-06-25 19:36:04,485: Error while completing task <function fetch_script at 0x7f0533fd1730>: Unable to connect to server https://lutris.net/api/installers/hearthstone-dx11-to-vulkan-dxvk: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:852)>
<class 'lutris.util.http.HTTPError'> Unable to connect to server https://lutris.net/api/installers/hearthstone-dx11-to-vulkan-dxvk: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:852)>
File "/usr/lib/python3/dist-packages/lutris/util/jobs.py", line 30, in target
result = self.function(*args, **kwargs)
File "/usr/lib/python3/dist-packages/lutris/installer/interpreter.py", line 56, in fetch_script
request.get()
File "/usr/lib/python3/dist-packages/lutris/util/http.py", line 81, in get
raise HTTPError("Unable to connect to server %s: %s" % (self.url, error))
编辑4:
我让它起作用了!我需要添加一个从/etc/ssl/certs
到/usr/local/ssl/certs
的系统链接,这一定是在升级openssl时删除的。
这也解决了我在酒会上遇到的sha256sum问题。
编辑5:实际上,/usr/local/ssl/certs
从未被删除过。它根本就不存在。我在/usr/lib/ssl/certs
中寻找的是openssl的旧版本。升级后,它在/usr/local/ssl/certs
中寻找它们。我能够用命令openssl version -d
来检查这个
发布于 2019-11-29 19:38:06
获取OpenSSL使用的当前目录:
openssl version -d
将所有旧证书复制到当前目录。通常的旧目录是/etc/ssl/certs
:
cp -P /etc/ssl/certs /usr/local/ssl/certs
发布于 2019-06-25 22:56:35
金额不会过期什么的。它们将一组数据识别为合理的唯一值。某个你所信任的人拥有这些文件并创建了一个标识符(散列/和)。然后存储该标识符,以便在稍后的日期检索该文件时,可以确认它是完全相同的文件。您已经下载了一个与原始文件不匹配的文件,并且必须使用不受信任的文件确定操作过程。sum使用的一个主要例子是当您访问Ubuntu下载页面并向您展示如何验证当前映像时:
echo "2da6f8b5c65b71b040c5c510311eae1798545b8ba801c9b63e9e3fd3c0457cbe *ubuntu-19.04-desktop-amd64.iso" | shasum -a 256 --check
在这种情况下,您将安全地获得已验证的和(https),然后使用它来验证ISO的完整性。这允许您从镜像下载ISO,并知道它没有被篡改。
对于证书故障,网站可能无法及时更新其证书.事情被遗忘了,更新也不做了。证书在默认情况下确实过期,并承担维护工作,因此有可能发生这种情况。如果可以获得文件的URL,则可以亲自检查证书。虽然这看起来很天真,但是一个未维护的服务器可能存在更大的问题,使得它所提供的文件不安全。
OpenSSL更新不太可能导致此问题。证书很可能无效。如果您需要更多的详细信息,可以提供示例。
https://askubuntu.com/questions/1153972
复制相似问题