OpenSSL官网
openssl-3.3.0.tar.gz
安装编译环境
yum -y install gcc gcc-c++ zlib-devel openssl-devel pam-devel perl-IPC-Cmd
|
安装openSSL 3.x 版本
配置阶段
wget https://www.openssl.org/source/openssl-3.3.0.tar.gz
|
tar -zxvf openssl-3.3.0.tar.gz
|
不指定 prefix
时,OpenSSL 会安装在以下默认路径 /usr/local
:
- 二进制文件:
/usr/local/bin
- 库文件:
/usr/local/lib
- 头文件:
/usr/local/include/openssl
- 配置文件:
/usr/local/ssl
cd openssl-3.3.0 && ./config --prefix=/usr/local/openssl_3.3
|
配置完成

安装阶段
-j 2
表示同时两个线程执行
配置阶段
备份旧版本的openssl
cp -rf /usr/bin/openssl /usr/bin/openssl.bak
|
创建新的符号链接指向新版本(软连接)
ln -s /usr/local/openssl_3.3/bin/openssl /usr/bin/openssl
|
ln -s /usr/local/openssl_3.3/include/openssl /usr/include/openssl
|
ssh-keygen需要依赖openssl的libcrypto (报错情况:openssl: error while loading shared libraries: libssl.so.3: cannot open shared object file: No such)
ln -snf /usr/local/openssl_3.3/lib64/libssl.so.3 /usr/lib/libssl.so.3
|
ln -snf /usr/local/openssl_3.3/lib64/libcrypto.so.3 /usr/lib/libcrypto.so.3
|
更新动态链接库路径
echo "/usr/local/openssl_3.3/lib/" >> /etc/ld.so.conf
|
更改环境变量
echo 'export PATH=/usr/local/openssl_3.3/bin:$PATH' >> /etc/profile
|
echo 'export LD_LIBRARY_PATH=/usr/local/openssl_3.3/lib64:$LD_LIBRARY_PATH' >> /etc/profile
|
验证阶段

问题记录
编译./config
报错
编译OpenSSL时报错,Can‘t locate IPC/Cmd.pm in @INC

yum -y install perl-IPC-Cmd
|
刷新动态库报错
执行命令ldconfig
报错

解决方案
mv /usr/lib64/libLLVM-7.so /usr/lib64/libLLVM-7
|
ln -sf /usr/lib64/libLLVM-7.so /usr/lib64/libLLVM-7
|

Can’t locate Data/Dumper
在执行make
报错,报错日志:
Can’t locate Data/Dumper.pm in @INC (@INC contains: Configurations . /opt/openssl-3.3.0/util/../Configurations /opt/openssl-3.3.0/util/perl /opt/openssl-3.3.0/Configurations /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 /opt/openssl-3.3.0/external/perl/Text-Template-1.56/lib /opt/openssl-3.3.0/util/../external/perl/Text-Template-1.56/lib) at exporters/cmake/OpenSSLConfig.cmake.in line 5. BEGIN failed–compilation aborted at exporters/cmake/OpenSSLConfig.cmake.in line 5. make: *** [exporters/OpenSSLConfig.cmake] Error 1 make: *** Waiting for unfinished jobs…. Can’t locate Data/Dumper.pm in @INC (@INC contains: Configurations . /opt/openssl-3.3.0/util/../Configurations /opt/openssl-3.3.0/util/perl /opt/openssl-3.3.0/Configurations /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 /opt/openssl-3.3.0/external/perl/Text-Template-1.56/lib /opt/openssl-3.3.0/util/../external/perl/Text-Template-1.56/lib) at exporters/cmake/OpenSSLConfig.cmake.in line 5. BEGIN failed–compilation aborted at exporters/cmake/OpenSSLConfig.cmake.in line 5. make: *** [OpenSSLConfig.cmake] Error 1
CentOS/RHEL
yum install perl-Data-Dumper
|
Ubuntu/Debian
sudo apt-get install libdata-dumper-perl
|
重新执行编译安装
cd /opt/openssl-3.3.0 ./config make sudo make install
|