OpenSSL 1.0.2k-fips升级至OpenSSL 1.1.1l
信息对比
查看当前版本
环境准备
sudo yum install zlib-devel
sudo yum install openssl-devel
sudo yum groupinstall 'Development Tools'
下载新版本
wget https://www.openssl.org/source/openssl-1.1.1l.tar.gz
tar -xzvf openssl-1.1.1l.tar.gz
cd openssl-1.1.1l/
编译安装
./config --prefix=/usr/local/bin/openssl --openssldir=/usr/local/bin/openssl shared zlib
# 将openssl的配置及输出文件都放到/usr/local/bin/openssl 目录下面。
make && sudo make install
检查排错
./openssl: error while loading shared libraries: libssl.so.1.1: cannot open shared object file: No such file or directory
这个错误信息表明在尝试运行 OpenSSL 时,操作系统无法找到名为 libssl.so.1.1
的共享库文件。这通常是由于以下原因之一引起的:
缺少 OpenSSL 或 libssl 包:如果您是在 Linux 或类 Unix 系统上运行 OpenSSL,则可能需要安装 OpenSSL 或 libssl 包。您可以尝试使用您的操作系统包管理器来安装这些软件包,例如在 Ubuntu 上使用 apt-get
命令,或在 CentOS 上使用 yum
命令。
共享库路径未正确配置:如果 OpenSSL 或 libssl 已经安装,但仍然遇到此问题,则可能是由于共享库路径未正确配置导致的。您可以尝试运行以下命令来查看当前的共享库路径:
echo $LD_LIBRARY_PATH
如果没有设置 $LD_LIBRARY_PATH
,则需要将 OpenSSL 共享库所在的路径添加到共享库搜索路径中。例如,如果 OpenSSL 共享库位于 /usr/local/lib
目录中,则可以运行以下命令:
export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
或者,您可以将此命令添加到您的 shell 配置文件(例如 .bashrc
)中,以便每次启动时都会自动设置该变量。
OpenSSL 共享库所在的路径可以因不同的操作系统、发行版或安装方式而有所不同。通常,共享库文件位于操作系统的默认共享库路径中,例如 /usr/lib
或 /usr/local/lib
。但是,在某些情况下,可能需要在共享库路径中添加或修改特定的目录。
以下是一些可能包含 OpenSSL 共享库文件的常见路径:
- /usr/lib
- /usr/local/lib
- /usr/lib64
- /usr/local/lib64
- /opt/local/lib
要确定 OpenSSL 共享库的确切位置,可以使用以下命令在终端中搜索共享库:
sudo find / -name "libssl.so*"
该命令将在整个文件系统中搜索所有名为 libssl.so
的文件,并返回它们的完整路径。如果找到了 OpenSSL 共享库,则可以将其路径添加到共享库路径中,以便系统可以找到它。
整体流程
cd /usr/local/lib
ls
cp -pr /usr/local/openssl/lib/* /usr/local/lib
pwd
/usr/local/lib
export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
echo $LD_LIBRARY_PATH
/usr/local/lib:
修改软链接
- 将1.0版本的备份重命名,将1.1版本的文件复制一份放到环境变量的路径下:
评论区