获取最新版本
升级1
升级2
OpenSSL 远程升级到 3.2.1_openssl升级-CSDN博客
----------------------------------------------------------------------------------
openssl version
wget https://www.openssl.org/source/openssl-3.1.2.tar.gz
## 进入文件目录
cd /usr //文件下载在 /usr
## 解压文件
tar -zxvf openssl-3.1.2.tar.gz
## 编译,并指定编译参数
./config --prefix=/usr/local/openssl #如果此步骤报错,需要安装perl以及gcc包
# 安装
make && make install
#备份默认的openssl,防止升级失败恢复
mv /usr/bin/openssl /usr/bin/openssl.bak
mv /usr/include/openssl /usr/include/openssl.bak
openssl version ## 如果不做配置,直接查看安装后的openssl版本则会报错
// 报错如此: openssl: error while loading shared libraries: libssl.so.1.1: cannot open shared object file: No such file or directory
## 将原来的openssl命令入口剪切至/tmp做备份
mv /usr/bin/openssl /tmp
## 软链接,将新版的openssl命令入口做一个软链接到/usr/bin目录下做替换
ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl
## 注意,软链接此处的源文件路径,我们可能不一致,是由我们在编译阶段传入的配置参数控制的,具体要 在/usr/local目录下寻找确定一下
ln -s /usr/local/openssl/lib64/libssl.so.3 /usr/lib64/libssl.so.3 ## 软链接
ln -s /usr/local/openssl/lib64/libcrypto.so.3 /usr/lib64/libcrypto.so.3 ## 软链接
## 再次查看openssl版本,可以看到更新成功
openssl version
981 mkdir /usr/local/openssl-1.1.1
982 ls
983 cp openssl-1.1.1w.tar.gz /opt/
984 ls
985 cd /opt/
986 ls
987 tar -xzvf openssl-1.1.1w.tar.gz
988 cd openssl-1.1.1w/
989 ./config --prefix=/usr/local/openssl-1.1.1
990 make && make install
991 openssl version
992 mv /usr/bin/openssl /usr/bin/openssl.bak
993 ln -s /usr/local/openssl-1.1.1/bin/openssl /usr/bin/openssl
994 mv /usr/lib64/openssl /usr/lib64/openssl.bak
995 mv /usr/lib64/libssl.so /usr/lib64/libssl.so.bak
996 ln -s /usr/local/openssl-1.1.1/lib/libssl.so.1.1 /usr/lib64/libssl.so
997 ln -s /usr/local/openssl-1.1.1/include/openssl /usr/include/openssl
998 echo "/usr/local/openssl-1.1.1/lib" >> /etc/ld.so.conf
999 ldconfig -v
1000 openssl version
1001 history
随手记:CentOS 7 手动更新 OpenSSL 1.1.1_openssl1.1.1w-CSDN博客
openssl 3.2.1升级
第一步查看当前版本
第二步下载openssl最新版本(官网下载地址最顶端)
第三步创建文件夹上传安装包
mkdir /usr/local/openssl-3.2.1
cp openssl-3.2.1.tar.gz /opt
tar -zxvf openssl-3.2.1.tar.gz
第四步安装(命令执行稍等片刻)
./config --prefix=/usr/local/openssl-3.2.1
make && make install
第五步:备份
mv /usr/bin/openssl /usr/bin/openssl.bak
ln -s /usr/local/openssl-3.2.1/bin/openssl /usr/bin/openssl
mv /usr/lib64/openssl /usr/lib64/openssl.bak
mv /usr/lib64/libssl.so /usr/lib64/libssl.so.bak
ln -s /usr/local/openssl-3.2.1/lib64/libssl.so.3 /usr/lib64/libssl.so.3
ln -s /usr/local/openssl-3.2.1/lib64/libcrypto.so.3 /usr/lib64/libcrypto.so.3
echo "/usr/local/openssl-3.2.1/lib" >> /etc/ld.so.conf
ldconfig -v
第六步完成
问题FAQ
在编译 ./config --prefix=/usr/local/openssl-3.2.1提示Can't locate IPC/Cmd.pm in @INC (@INC contains的解决思路
安装yum install -y perl-CPAN(稍等片刻)
perl -MCPAN -e shell
yes
sudo
yes
install IPC/Cmd.pm
install IPC/Cmd.pm
完美解决