Ubuntu将openssl7.2离线升级到7.4

背景

	因为安全原因,服务器无法访问外网,不能通过apt-get安装各种包,
	因此只能通过其他ubuntu服务器下载所有deb包后再拷贝过去手动安装。

步骤

1.找一台可以联网且尽量版本相同的ubuntu服务器

2.在/var/cache/apt下新建一键下载依赖包的脚本download.sh


#!/bin/bash
  
logfile=/home/log
ret=""
function getDepends()
{
   echo "fileName is" $1>>$logfile
   # use tr to del < >
   ret=`apt-cache depends $1|grep Depends |cut -d: -f2 |tr -d "<>"`
   echo $ret|tee  -a $logfile
}
# 需要获取其所依赖包的包
libs=$1                  # 或者用$1,从命令行输入库名字

# download libs dependen. deep in 3
i=0
sudo apt-get install $libs -d -y
while [ $i -lt 3 ] ;
do
    let i++
    echo $i
    # download libs
    newlist=" "
    for j in $libs
    do
        added="$(getDepends $j)"
        newlist="$newlist $added"
        apt install $added --reinstall -d -y
    done

    libs=$newlist
done

3.删除/var/cache/apt/archives文件夹,并新建一个空的

rm -rf /var/cache/apt/archives
mkdir /var/cache/apt/archives

4.运行脚本下载所需要的依赖包

./download.sh build-essential
#必须下libssl1.0-dev 下载libssl-dev 编译openssl7.4报错
./download.sh libssl1.0-dev
./download.sh zlib1g-dev

5.将archives打包

tar -zxvf archives.tar.gz ./archives/

6.下载openssl7.4安装包

官网各版本下载地址

wget https://fastly.cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-7.4p1.tar.gz

7.将5、6的文件拷贝到目标服务器上

8.解压archives、openssl7.4

tar -zcvf archives.tar.gz
tar -zcvf openssh-7.4p1.tar.gz

9.进入archives安装所有deb包

cd archives
sudo dpkg -i *.deb

10.进入openssl7.4编译安装

cd openssl7.4p1
./configure
make
make install
#检查版本
sshd -V

注:如果提示缺少依赖,请重复3、4、9步下载安装所需包

上一篇:解决/var/cache/apt/archives空间太小


下一篇:dedecms教程:“无法获得主键,因此无法进行后续