我升级 OpenSSL 1.0.1p
lsof | grep libssl
结果
防火墙 665 根内存 REG 253,0 445544 805308545 /usr/lib64/libssl.so.1.0.1e gmain 665 1197 根内存 REG 253,0 445544 805308545 /usr/lib64/libssl.so.1.0.1e 调整 670 根内存 REG 253,0 445544 805308545 /usr/lib64/libssl.so.1.0.1e gmain 670 859 根内存 REG 253,0 445544 805308545 /usr/lib64/libssl.so.1.0.1e 调整 670 860 根内存 REG 253,0 445544 805308545 /usr/lib64/libssl.so.1.0.1e 调整 670 861 根内存 REG 253,0 445544 805308545 /usr/lib64/libssl.so.1.0.1e 调整 670 862 根内存 REG 253,0 445544 805308545 /usr/lib64/libssl.so.1.0.1e NetworkMa 890 根内存 REG 253,0 260456 805308647 /usr/lib64/libssl3.so NetworkMa 890 1085 根内存 REG 253,0 260456 805308647 /usr/lib64/libssl3.so gdbus 890 1088 根内存 REG 253,0 260456 805308647 /usr/lib64/libssl3.so sshd 1450 根内存 REG 253,0 260456 805308647 /usr/lib64/libssl3.so 拾取 13721 后缀 DEL REG 253,0 806585326 /usr/lib64/libssl.so.1.0.0 sshd 14032 根内存 REG 253,0 260456 805308647 /usr/lib64/libssl3.so opendkim 25549 opendkim DEL REG 253,0 806585326 /usr/lib64/libssl.so.1.0.0 opendkim 25549 25550 opendkim DEL REG 253,0 806585326 /usr/lib64/libssl.so.1.0.0 opendkim 25549 25551 opendkim DEL REG 253,0 806585326 /usr/lib64/libssl.so.1.0.0 主控25654根DEL REG 253,0 806585326 /usr/lib64/libssl.so.1.0.0 qmgr 25656 后缀 DEL REG 253,0 806585326 /usr/lib64/libssl.so.1.0.0 tlsmgr 25662 后缀 DEL REG 253,0 806585326 /usr/lib64/libssl.so.1.0.0
我删除 libssl.so.1.0.1e、libcrypto.so.1.0.1e、libcrypto.so.10 并创建符号链接
libssl.so.1.0.1e 到 libssl.so.1.0.0 libcrypto.so.1.0.1e 到 libcrypto.so.1.0.0 libcrypto.so.10 到 libcrypto.so.1.0.0
lsof | grep libssl
防火墙 659 根内存 REG 253,0 0 806585325 /usr/lib64/libssl.so.1.0.0 gmain 659 1265 根内存 REG 253,0 0 806585325 /usr/lib64/libssl.so.1.0.0 调整 664 根内存 REG 253,0 0 806585325 /usr/lib64/libssl.so.1.0.0 gmain 664 840 根内存 REG 253,0 0 806585325 /usr/lib64/libssl.so.1.0.0 调整 664 841 根内存 REG 253,0 0 806585325 /usr/lib64/libssl.so.1.0.0 调整 664 842 根内存 REG 253,0 0 806585325 /usr/lib64/libssl.so.1.0.0 调整 664 851 根内存 REG 253,0 0 806585325 /usr/lib64/libssl.so.1.0.0 NetworkMa 886 根内存 REG 253,0 260456 805308647 /usr/lib64/libssl3.so NetworkMa 886 1035 根内存 REG 253,0 260456 805308647 /usr/lib64/libssl3.so gdbus 886 1044 根内存 REG 253,0 260456 805308647 /usr/lib64/libssl3.so opendkim 1510 opendkim 内存 REG 253,0 0 806585325 /usr/lib64/libssl.so.1.0.0 opendkim 1510 1518 opendkim 内存 REG 253,0 0 806585325 /usr/lib64/libssl.so.1.0.0 opendkim 1510 1519 opendkim 内存 REG 253,0 0 806585325 /usr/lib64/libssl.so.1.0.0 sshd 2667 根内存 REG 253,0 260456 805308647 /usr/lib64/libssl3.so sshd 16899 根内存 REG 253,0 260456 805308647 /usr/lib64/libssl3.so
lsof | grep 库
防火墙 659 根内存 REG 253,0 2226059 806585322 /usr/lib64/libcrypto.so.1.0.0 gmain 659 1265 根内存 REG 253,0 2226059 806585322 /usr/lib64/libcrypto.so.1.0.0 调整 664 根内存 REG 253,0 2226059 806585322 /usr/lib64/libcrypto.so.1.0.0 gmain 664 840 根内存 REG 253,0 2226059 806585322 /usr/lib64/libcrypto.so.1.0.0 调整 664 841 根内存 REG 253,0 2226059 806585322 /usr/lib64/libcrypto.so.1.0.0 调整 664 842 根内存 REG 253,0 2226059 806585322 /usr/lib64/libcrypto.so.1.0.0 调整 664 851 根内存 REG 253,0 2226059 806585322 /usr/lib64/libcrypto.so.1.0.0 ntpd 720 ntp mem REG 253,0 2226059 806585322 /usr/lib64/libcrypto.so.1.0.0 opendkim 1510 opendkim 内存 REG 253,0 2226059 806585322 /usr/lib64/libcrypto.so.1.0.0 opendkim 1510 1518 opendkim 内存 REG 253,0 2226059 806585322 /usr/lib64/libcrypto.so.1.0.0 opendkim 1510 1519 opendkim 内存 REG 253,0 2226059 806585322 /usr/lib64/libcrypto.so.1.0.0 sshd 2667 根内存 REG 253,0 40816 805307655 /usr/lib64/libcrypt-2.17.so sshd 2667 根内存 REG 253,0 2226059 806585322 /usr/lib64/libcrypto.so.1.0.0 sshd 16899 根内存 REG 253,0 40816 805307655 /usr/lib64/libcrypt-2.17.so sshd 16899 根内存 REG 253,0 2226059 806585322 /usr/lib64/libcrypto.so.1.0.0
但是ssh有问题
错误消息:
ssh: /lib64/libcrypto.so.10: 没有可用的版本信息(ssh 需要) ssh: /lib64/libcrypto.so.10: 没有可用的版本信息(ssh 需要) ssh: /lib64/libcrypto.so.10: 没有可用的版本信息(ssh 需要)
答案1
你应该绝不从源代码升级基于包的发行版上的核心系统组件。不完全是,绝不。这样做会导致您所描述的问题。
要解决这个问题:
- 从源代码中完全删除您安装的 OpenSSL,并将所有链接放回之前存在的位置。您的系统现在将处于更新之前的状态。
从 RPM 包安装正确打包的 OpenSSL 版本。我看到官方的 CentOS 7 OpenSSL 软件包仍然是 1.0.1e(请参阅这里)但是您确定您想要的修复程序尚未包含在该软件包中吗?版本号有时会产生误导 - 红帽经常将软件包更新到较新的版本/向后移植修复程序,但保持软件包主要版本相同。
您可以使用以下内容进行检查:
rpm -q --changelog openssl | less
我在以下位置看不到任何适用于 CentOS 7 的 OpenSSL 软件包EPEL但有第三方软件包可用。不过,我会犹豫是否信任 OpenSSL 的第三方存储库......