Ubuntu20.04版本升级openssh9.8p1方法

news2024/11/15 8:24:47

一、问题描述:

 8.5p1 和 9.7p1 之间的openssh版本漏洞可能会导致linux系统以root身份进行RCE,所以需安装最新版本

二、解决方法:

将当前openssh版本升级到最新的版本即openssh-9.8p1版本,OpenSSL大版本升级且OpenSSH有新稳定版本,建议升级OpenSSL同时也升级OpenSSH

1.安装编译依赖包

apt install gcc make zlib1g-dev libpam0g-dev libkrb5-dev libedit-dev -y

2.先升级openssl,再升级openssh

ubuntu20.04 默认openssl版本:OpenSSL 1.1.1f

ssh的版本为:OpenSSH_8.2p1

3.下载OpenSSL

访问openssl官网:[ Downloads ] - /source/index.htmlicon-default.png?t=N7T8https://www.openssl.org/source/找到最新版本通过wget下载

wget https://www.openssl.org/source/openssl-3.0.13.tar.gz

注意:由于OpenSSL 1.1.x版本已停止维护,ubuntu20.04.x系统建议都使用目前长期支持版

cd /usr/local/src/
tar -zxf openssl-3.0.13.tar.gz
cd openssl-3.0.13
./config shared --prefix=/usr/local/openssl --openssldir=/usr/local/openssl

进行编译和安装

make&&make install

运行一段时间等编译安装完成,完成后执行echo $?显示是否执行成功。

备份原来的openssl

mv /usr/bin/openssl  /usr/bin/openssl.bak
ln -s /usr/local/openssl/bin/openssl  /usr/bin/openssl

将openssl 的lib 库添加到系统(‘/usr/local/openssl/lib64’ 单引号)

#openssl 1.x.x版本是: /usr/local/openssl/lib/ 路径
#echo '/usr/local/openssl/lib' > /etc/ld.so.conf.d/openssl.conf
echo '/usr/local/openssl/lib64' > /etc/ld.so.conf.d/openssl.conf 

然后加载lib库

ldconfig -v

查看OpenSSL版本

4.下载OpenSSH包

访问链接:Index of /pub/OpenBSD/OpenSSH/portable/icon-default.png?t=N7T8https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/通过wget下载OpenSSH_9.8p1

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

备份文件

mkdir /usr/bin/bak
cp -arpf /usr/bin/scp /usr/bin/bak/scp.bak
cp -arpf /usr/bin/sftp /usr/bin/bak/sftp.bak
cp -arpf /usr/bin/ssh /usr/bin/bak/ssh.bak
cp -arpf /usr/bin/ssh-add /usr/bin/bak/ssh-add.bak
cp -arpf /usr/bin/ssh-agent /usr/bin/bak/ssh-agent.bak
cp -arpf /usr/bin/ssh-keygen /usr/bin/bak/ssh-keygen.bak
cp -arpf /usr/bin/ssh-keyscan /usr/bin/bak/ssh-keyscan.bak
mkdir /usr/sbin/bak
cp -arpf /usr/sbin/sshd /usr/sbin/bak/sshd.bak

进入openssh-9.8p1目录,执行编译安装命令

tar -zxf openssh-9.8p1.tar.gz
cd  /usr/local/src/openssh-9.8p1.tar.gz
./configure --prefix=/usr/local/openssh-9.8p1 --sysconfdir=/etc/ssh --with-kerberos5 --with-libedit --with-pam --with-gssapi --with-zlib --with-ssl-dir=/usr/local/openssl --with-privsep-path=/var/lib/sshd
make && make install

make install运行完后执行echo $? 显示如下即是安装成功

替换新版本openssh相关命令

cp -arpf /usr/local/openssh-9.8p1/bin/* /usr/bin/
cp -arpf /usr/local/openssh-9.8p1/sbin/*   /usr/sbin/

修改配置文件

sed -i 's@#PermitRootLogin prohibit-password@PermitRootLogin yes@g' /etc/ssh/sshd_config

允许root远程登录,并重启ssh

systemctl daemon-reload
systemctl restart ssh
ssh -V  查看版本

注:遇到如下编译问题

解决方法:

安装依赖包

apt install gcc make zlib1g-dev libpam0g-dev libkrb5-dev libedit-dev -y

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1945928.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

今天我们聊聊C#的并发和并行

并发和并行是现代编程中的两个重要概念,它们可以帮助开发人员创建高效、响应迅速、高性能的应用程序。在C#中,这些概念尤为重要,因为该语言提供了对多线程和异步编程的强大支持。本文将介绍C#中并发和并行编程的关键概念、优点,并…

CSS(二)——CSS 背景

CSS 背景 CSS 背景属性用于定义HTML元素的背景。 CSS 背景属性 Property描述background简写属性,作用是将背景属性设置在一个声明中。background-attachment背景图像是否固定或者随着页面的其余部分滚动。background-color设置元素的背景颜色。background-image把…

秋招突击——7/24——知识补充——JVM类加载机制

文章目录 引言类加载机制知识点复习类的生命周期1、加载2、连接——验证3、连接——准备4、连接——解析5、初始化 类加载器和类加载机制类加载器类加载机制——双亲委派模型 面试题整理1、类加载是什么2、类加载的过程是什么3、有哪些类加载器?4、双亲委派模型是什…

FineBI连接MySQL5.7

一、在FineBI系统管理中,点击【新建数据库连接】 选择MySQL数据库 配置数据库连接,如下,其中数据库名称就是需要连接的目标数据库

STM32工业物联网系统教程

目录 引言环境准备工业物联网系统基础代码实现:实现工业物联网系统 4.1 数据采集模块 4.2 数据处理与分析模块 4.3 通信与网络系统实现 4.4 用户界面与数据可视化应用场景:工业监测与优化问题解决方案与优化收尾与总结 1. 引言 工业物联网&#xff08…

QCefView 在Clion+vs2022下编译

目录 QCefView 的编译Note下载代码方式一:可直接通过github下载方式二: csdn下载编译代码1. 解压文件2. 按照规定重新放置代码文件3. 将cef 的zip 放入CefViewCore中的dep文件夹内4. 使用Clion打开QCefView工程文件夹测试代码附QCefView 的编译 Note 需要使用VS2022 编译,VS…

配置linux客户端免密登录服务端linux主机的root用户

在192.168.30.129端口,对192.168.30.130端口进行免密登录 登录成功

[嵌入式Linux]-常见编译框架与软件包组成

嵌入式常见编译框架与软件包组成 1.嵌入式开发准备工作 主芯片资料包括: 主芯片资料 主芯片开发参考手册;主芯片数据手册;主芯片规格书; 硬件参考 主芯片硬件设计参考资料;主芯片配套公板硬件工程; 软件…

三分钟追踪工作流表单引擎几大优势

众所周知,企业都希望能实现开源节流。那么,如何实现这一目标是很多人都在思考的重要问题。低代码技术平台可操作性强、可视化界面丰富而简洁高效、灵活可靠,在推动企业流程化办公的过程中发挥了重要的市场价值和作用。本文将给大家介绍清楚低…

ROS小车设计问题记录

演示视频 问题小计 串口发送数据乱码IMU JY60 串口接收车轮测速电机调速 串口发送数据乱码 使用Send_User_Data()数据错误,数据帧输出为0x32;使用HAL_UART_Transmit_DMA()输出正确,数据帧输出为0x55。 解决: 将数组_data_to_sne…

vscode配置latex环境制作【文档、简历、resume】

vscode配置latex环境制作【文档、简历、resume】 1. 安装Tex Live及vscode插件 可以参考:vscode配置latex环境制作beamer ppt 2. 添加vscode配置文件 打开vscode,按下Ctrl Shift P打开搜索框,搜索Preference: Open User Settings (JSON…

[Linux]Mysql之主从同步

AB复制 一、主从复制概述 主从复制,是用来建立一个和主数据库完全一样的数据库环境,称为从数据库;主数据库一般是准实时的业务数据库。 主从复制的作用 1.做数据的热备,作为后备数据库,主数据库服务器故障后&#xf…

【人工智能】Transformers之Pipeline(五):深度估计(depth-estimation)

目录 一、引言 二、深度估计(depth-estimation) 2.1 概述 2.2 技术路径 2.3 应用场景 2.4 pipeline参数 2.4.1 pipeline对象实例化参数 2.4.2 pipeline对象使用参数 2.4 pipeline实战 2.5 模型排名 三、总结 一、引言 pipeline&#xff08…

【Stable Diffusion】AI生成新玩法:图像风格迁移

【Stable Diffusion】 AI生成新玩法:图像风格迁移 1 背景导入 你是否曾梦想过让自己融入梵高的星空之中 或是将一幅风景画赋予毕加索的立体主义之魂 还是把人物送进宫崎骏的动画世界? 下面让我们来看看如何通过 Stable Diffusion 实现在图像中玩…

本地部署,Whisper: 开源语音识别模型

目录 简介 特点 应用 使用方法 总结 GitHub - openai/whisper: Robust Speech Recognition via Large-Scale Weak SupervisionRobust Speech Recognition via Large-Scale Weak Supervision - openai/whisperhttps://github.com/openai/whisper 简介 Whisper 是一个由 O…

mysql面试(二)

前言 这是mysql面试基础的第二节,主要是了解一下mysql数据更新的基本流程,还有三大日志的作用。但是具体的比如undolog是如何应用在mvcc机制中的,由于篇幅问题就放在下一在章节 数据更新流程 上面是说了更新真正数据之前的大致流程&#x…

19023 砍树

这个问题可以通过二分查找来解决。我们可以设定一个范围&#xff0c;然后在这个范围内查找最大的高度&#xff0c;使得砍下的木材长度至少为M。 以下是C的解决方案&#xff1a; #include <iostream> #include <vector> #include <algorithm> using namespa…

解决R语言找不到系统库导致的报错

1、基本需知 1.1、系统库 系统库&#xff08;System library&#xff09;是一组预先编写和编译好的软件模块集合&#xff0c;用于支持操作系统的基本功能和提供一些常见的服务。这些库通常由操作系统或第三方开发者提供&#xff0c;并且在系统安装过程中被预装或者用户可以额…

【Linux】通过分配虚拟内存的方式来解决因内存不够而导致部署的项目自动挂掉

多个 jar 包项目部署在同一台服务器上&#xff0c;当服务器配置低&#xff0c;内存不足时&#xff0c;有可能出现 nohup java -jar 启动的进程就莫名其妙挂掉的问题。 解决方式&#xff1a; 第一种方法&#xff1a;进行JVM调优可以改善这种情况&#xff0c;但是项目太多&…

DNS域名管理系统、搭建DNS服务

1.DNS概述 1.DNS&#xff08;domain name system &#xff09; 域名管理系统 域名&#xff1a; 由特定的格式组成&#xff0c;⽤来表示互联⽹中某⼀台计算机或者计算机组的名称&#xff0c;能够使⼈更⽅便的访问互联⽹&#xff0c;⽽不⽤记住能够被机器直接读取的IP地址。 计算…