记一次在openEuler系统下离线编译升级到openssh9.8p1

缘起

由于某个项目上甲方对服务器进行漏洞扫描,系统为:openEuler 22.03 (LTS-SP4)。提示现有OpenSSH版本存在漏洞,需要升级到openssh-9.8p1的版本(目前最新),遂有了这篇记录文章。

PS:切记!在升级SSH之前服务器上最好安装telnet或其他远程工具,以防升级失败导致无法链接上服务器。

1、检查版本

bash 复制代码
[root@localhost cyunzing]# ssh -V
OpenSSH_8.8p1, OpenSSL 1.1.1wa  16 Nov 2023

可以看到现在的OpenSSH版本是8.8p1,在漏洞包含的版本范围内,需要进行升级。

2、下载openssh源码包

编译opensssh时需要服务器上安装的openssl版本大于等于1.1.1,而从上面ssh -V的结果可以看到系统默认的OpenSSL版本就是1.1.1。所以不需要考虑升级openssl,直接升级openssh即可。

2.1、服务器不可以联网的情况

在可以链接互联网网络的电脑下载源码包,再上传到内网中的服务器。

下载地址:https://mirrors.aliyun.com/pub/OpenBSD/OpenSSH/portable/openssh-9.8p1.tar.gz

2.2、服务器可以联网的情况

使用curl(openEuler系统最小化安装都自带了这个命令)命令下载,-o是指定下载后保存的文件名。

bash 复制代码
curl -o openssh-9.8p1.tar.gz https://mirrors.aliyun.com/pub/OpenBSD/OpenSSH/portable/openssh-9.8p1.tar.gz

2.3、解压openssh-9.8p1.tar.gz

上面两步结合具体情况任选一种即可,这里我选的是第一种,即2.1、服务器不可以联网的情况,保存在服务器的目录地址是/root/cyunzing/updateBugs/(目录要提前创建好),然后解压进入目录。

bash 复制代码
tar zxvf openssh-9.8p1.tar.gz
cd openssh-9.8p1/

3、编译安装openssh

通过2.3、解压openssh-9.8p1.tar.gz步骤解压、cd进入openssh-9.8p1/目录后执行以下命令,检查编译环境有无问题和进行编译安装。

bash 复制代码
./configure
make -j4 && make install

4、安装完毕

重启sshd服务

这一步如果没卡住不动就是没问题了。

bash 复制代码
systemctl restart sshd

5、检查是否安装成功

新开一个远程链接窗口 ,执行ssh -V对比未升级前的版本信息,判断是否升级完成。

bash 复制代码
[root@localhost openssh-9.8p1]# ssh -V
OpenSSH_9.8p1, OpenSSL 1.1.1wa  16 Nov 2023
相关推荐
瓶中怪6 分钟前
ROS2 机器人软件系统
linux·c++·python·ubuntu·vmware·ros2·机器人软件开发
iangyu6 分钟前
linux配置时间同步
linux·运维·服务器
天空'之城26 分钟前
Linux 系统编程 04:进程基础
linux·开发语言·进程基础
从零开始的代码生活_27 分钟前
NAT、代理服务与内网穿透详解
linux·服务器·网络·c++·http·智能路由器
灯厂码农1 小时前
C语言内存管理——内存对齐与共用体union
linux·服务器·c语言
charlie1145141911 小时前
Cinux: 加载第一个内核:从 bootloader 跳进 C++
linux·开发语言·c++·嵌入式
iCxhust2 小时前
linux目录是否保存在硬盘 启动后读入解析的
linux·运维·服务器
懒鸟一枚2 小时前
Linux 系统 Service 服务配置详解
linux·服务器·网络
RisunJan3 小时前
Linux命令-readonly(Bash 内建设置只读变量)
linux
FlightYe4 小时前
FFmpeg移动端硬解机制
linux·网络·ffmpeg·音视频·实时音视频·视频编解码