我正在尝试在 CentOS 7.3 上更新 openssl。我一开始尝试使用yum update openssl-devel
' 来更新它,但它显示:No packages marked for update
当我运行时yum info openssl
出现的版本号是:1.0.1e
之后我使用这个从源代码安装了 openssl 1.0.2i指导在 CentOS 7.3 上。我认为我的问题出在这两行:
mv /usr/bin/openssl /root/
ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl
在两种情况下,当我在安装后运行 openssl 版本时,我仍然会看到旧版本:
openssl version
OpenSSL 0.9.8l 5 Nov 2009
可能是什么问题呢?
答案1
我真的不认为你在这里向我们展示了全部情况。你几乎肯定没有“只是按照”链接的文档。如果你这样做了,那么你就不会OpenSSL 0.9.8l 5 Nov 2009
在你的系统上安装 7 年前的版本。此时你应该考虑你的系统配置严重错误,你应该重新安装它。
如果您因为版本号显示的安全问题而想要更新 openssl,那么您需要阅读并了解反向移植。RHEL(CentOS 的上游)将安全修复程序反向移植到其产品中。您可以使用命令
rpm -q --changelog openssl
查看变更日志。然后您应该检查是否列出了您关心的漏洞,它们几乎肯定会被列出。
供参考,我手头有 C7.3 系统
openssl version
OpenSSL 1.0.1e-fips 11 Feb 2013
和
rpm -q --changelog openssl
Thu Sep 22 2016 Tomáš Mráz <[email protected]> 1.0.1e-60
- fix CVE-2016-2177 - possible integer overflow
- fix CVE-2016-2178 - non-constant time DSA operations
- fix CVE-2016-2179 - further DoS issues in DTLS
- fix CVE-2016-2180 - OOB read in TS_OBJ_print_bio()
- fix CVE-2016-2181 - DTLS1 replay protection and unprocessed records issue
- fix CVE-2016-2182 - possible buffer overflow in BN_bn2dec()
- fix CVE-2016-6302 - insufficient TLS session ticket HMAC length check
- fix CVE-2016-6304 - unbound memory growth with OCSP status request
- fix CVE-2016-6306 - certificate message OOB reads
- mitigate CVE-2016-2183 - degrade all 64bit block ciphers and RC4 to
112 bit effective strength
...
因此,最近在 9 月份,安全修复程序被移植到 OpenSSL 中。