Linux(Centos7)OpenSSH漏洞修复,升级最新openssh-9.7p1

news2024/10/6 16:18:35

OpenSSH更新

    • 一、OpenSSH漏洞
    • 二、安装zlib
    • 三、安装OpenSSL
    • 四、安装OpenSSH

一、OpenSSH漏洞

服务器被扫描出了漏洞需要修复,准备升级为最新openssh服务
在这里插入图片描述
在这里插入图片描述

1. 使用ssh -v查看本机ssh服务版本号

ssh -V

虚拟机为OpenSSH7.4p1,现在准备升级为OpenSSH9.7p1
在这里插入图片描述
2. 准备好需要用到的安装包

链接:https://pan.baidu.com/s/1fN624AdqSp7aG2QXs8nAKw?pwd=8888 
提取码:8888

在这里插入图片描述
3. 将安装包全部上传至服务器/opt目录(可以是任意目录,解压时注意路径)
在这里插入图片描述
4. 安装telnet服务。为了保险起见,假如ssh更新失败断开又连不上我们可以使用telnet服务连接。此步骤可跳过大家根据自己实际情况来。升级OpenSSH之前多打开一个连接窗口,假如升级失败了卸载了SSH也还是能连上的,只是不能断开,断开就连不上了。

4.1 telnet服务是由xinetd管理的,需要安装xinetd服务才能启动telnet-server

yum -y install telnet-server xinetd

在这里插入图片描述在这里插入图片描述
4.2 添加telnet配置文件

echo "service telnet
{
    flags        = REUSE
    socket_type    = stream        
    wait        = no
    user        = root
    server        = /usr/sbin/in.telnetd
    log_on_failure    += USERID
    disable        = no
}" > /etc/xinetd.d/telnet 

在这里插入图片描述
4.3 启动xinetd

systemctl start xinetd && systemctl status xinetd

在这里插入图片描述
4.4 开机自启xinetd

systemctl enable xinetd

4.5 创建连接账号密码

#创建连接账号
useradd admins
#设置连接密码
passwd admins
#设置密码
Asd123!!!

在这里插入图片描述
4.6 测试连接
使用win+r输入cmd打开指令板,输入telnet 服务器IP在这里插入图片描述
输入刚刚创建的账号密码连接,和SSH连接一样

#步骤4.5创建的
账号: admins
密码: Asd123!!!

在这里插入图片描述
4.7 现在不需要ssh连接工具也能连接了,这样即便ssh连接失败也能用指令板操作。
在这里插入图片描述
5. 备份之前的SSH配置文件

cp -p /etc/ssh/sshd_config /etc/ssh/sshd_config.bak
cp -p /usr/sbin/sshd /usr/sbin/sshd.bak
cp -p /usr/bin/ssh /usr/bin/ssh.bak
cp -rf /usr/bin/openssl /usr/bin/openssl.bak
cp -p /usr/bin/ssh-keygen /usr/bin/ssh-keygen.bak
cp -p /etc/ssh/ssh_host_ecdsa_key.pub /etc/ssh/ssh_host_ecdsa_key.pub.bak
cp -rf /usr/lib/systemd/system /system.bak
cp /etc/pam.d/sshd /etc/pam.d/sshd.bak

在这里插入图片描述
6. 依赖安装-绝大部分应该都已经装过,可以只装没装过的

yum install -y gcc gcc-c++ glibc make autoconf openssl openssl-devel pcre-devel pam-devel zlib-devel perl-IPC-Cmd

在这里插入图片描述

二、安装zlib

1. 解压

tar -zxvf zlib-1.3.1.tar.gz -C /usr/local/

cd /usr/local/zlib-1.3.1/

在这里插入图片描述
在这里插入图片描述
2. 编译 && 安装

./configure --prefix=/usr/local/zlib

在这里插入图片描述

make && make install

在这里插入图片描述
在这里插入图片描述

三、安装OpenSSL

1. 解压

cd /opt

tar -zxvf openssl-3.3.0.tar.gz -C /usr/local/

cd /usr/local/openssl-3.3.0

在这里插入图片描述
2. 安装依赖

yum install -y perl-CPAN perl-ExtUtils-CBuilder perl-ExtUtils-MakeMaker

在这里插入图片描述

perl-IPC-Cmd,Data-Dumper-2不装直接安装openssl会报错,可能是虚拟机比较老,正常服务器应该有安装,可先跳过,如果报错在回来装

3. 安装perl-IPC-Cmd

cp /opt
unzip perl-IPC-Cmd.zip -d /usr/local/
cd /usr/local

在这里插入图片描述

cd perl
rpm -ivhU * --nodeps --force

在这里插入图片描述
4. 安装Data-Dumper-2.183

cp /opt
tar -zxvf Data-Dumper-2.183.tar.gz -C /usr/local
cd Data-Dumper-2.183

在这里插入图片描述

cd Data-Dumper-2.183
perl Makefile.PL
make
make install

在这里插入图片描述
5. 安装openssl

cd /opt
tar -zxvf openssl-3.3.0.tar.gz -C /usr/local/
cd /usr/local/openssl-3.3.0/

./config  --prefix=/usr/local/ssl  --shared

在这里插入图片描述
6. 编译安装,过程比较久,大概十来分钟

make && make install

在这里插入图片描述
编译安装完成
在这里插入图片描述
7. 配置

#依次执行
mv /usr/bin/openssl /usr/bin/oldopenssl
ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl
ln -s /usr/local/ssl/lib64/libssl.so.3 /usr/lib64/libssl.so.3
ln -s /usr/local/ssl/lib64/libcrypto.so.3 /usr/lib64/libcrypto.so.3

echo "/usr/local/ssl/lib64" >> /etc/ld.so.conf

ldconfig

在这里插入图片描述
8. 查看更新后的版本

openssl version -v

在这里插入图片描述

四、安装OpenSSH

1. 卸载旧版本openssh7.4p1注意:卸载完千万不能断开,断开就连不上了

yum remove -y openssh

在这里插入图片描述

2. 清理残余文件

rm -rf /etc/ssh/*

在这里插入图片描述
3. 解压

cd /opt
tar -zxvf openssh-9.7p1.tar.gz -C /usr/local/
cd /usr/local/openssh-9.7p1

在这里插入图片描述
4. 编译安装

./configure --prefix=/usr/local/openssh --with-zlib=/usr/local/zlib --with-ssl-dir=/usr/local/ssl

在这里插入图片描述

在这里插入图片描述

make && make install 

在这里插入图片描述

5. 配置ssh

#ssh允许root登录、需要密码进行验证
echo 'PermitRootLogin yes' >>/usr/local/openssh/etc/sshd_config
echo 'PubkeyAuthentication yes' >>/usr/local/openssh/etc/sshd_config
echo 'PasswordAuthentication yes' >>/usr/local/openssh/etc/sshd_config

#将编译安装的新配置文件   拷贝到原路径下
cp /usr/local/openssh/etc/sshd_config /etc/ssh/sshd_config
cp /usr/local/openssh/sbin/sshd /usr/sbin/sshd
cp /usr/local/openssh/bin/ssh /usr/bin/ssh
cp /usr/local/openssh/bin/ssh-keygen /usr/bin/ssh-keygen
cp /usr/local/openssh/etc/ssh_host_ecdsa_key.pub /etc/ssh/ssh_host_ecdsa_key.pub

#拷贝启动脚本
cp -p contrib/redhat/sshd.init /etc/init.d/sshd
#给sshd添加可执行权限
chmod +x /etc/init.d/sshd
#设置开机自启
systemctl enable sshd
#重新启动sshd服务
systemctl restart sshd
#查看sshd服务状态
systemctl status sshd

在这里插入图片描述
6. 查看OpenSSH版本,显示新版本就是升级成功了,如果显示还是旧的话断开重连一下再查看版本,可能没刷新

ssh -V

在这里插入图片描述

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

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

相关文章

Windows 与 Java 环境下的 Redis 利用分析

1 前言 在最近的一次攻防演练中,遇到了两个未授权访问的 Redis 实例。起初以为可以直接利用,但后来发现竟然是Windows Java (Tomcat)。因为网上没有看到相关的利用文章,所以在经过摸索,成功解决之后决定简单写一写。 本文介绍了…

洗地机性价比高的是哪一款?行内人告诉你

在浏览前,希望您轻触屏幕上方的“关注”按钮,让我后续为您带来更多实用且精彩的内容,感谢您的支持! 洗地机作为现在的流行清洁工具,它的魅力之处在于:性价比极高,大多数家庭无需花费过多就能把…

java的Filter(过滤器),Interceptor(拦截器) 和 Aspect(切面)

文章目录 前言一、过滤器 (Filter) 基本用法二、拦截器 (Interceptor) 基本用法三、Aspect(切面)的基本用法总结 前言 Filter 是servlet层面的,由Servlet容器(如Tomcat)支持,只能在web程序中使用,实现了javax.servlet.Filter接口 Intercept…

2024北京智源大会

北京智源大会是年度国际性人工智能高端学术交流的盛会,定位于内行的AI盛会。智源大会紧密围绕当前人工智能学术领域迫切需要解决的问题,以及产业落地过程中存在的诸多挑战,开展深入探讨。智源研究院是2018年11月份成立的一家人工智能领域的新…

直播美颜SDK技术指南:实现实时美颜效果的算法方案

本篇文章,小编将探讨直播美颜SDK的技术实现和算法方案。 一、美颜技术概述 美颜技术通过一系列图像处理算法,实时美颜效果可以在视频直播过程中实时呈现,提升用户的直播体验。为了实现这些效果,需要结合图像处理和计算机视觉技术…

“奇点”临近,产业应用与人工智能怎样“共同进化”

以下文章来源:新华日报 眼下,以大模型为核心的人工智能技术呈现颠覆性突破。年初,OpenAI公司发布旗下的文生视频大模型Sora,距去年ChatGPT的横空出世,也仅仅过去一年。 “当前,人工智能迈向通用智能‘奇点’…

Hue Hadoop 图形化用户界面 BYD

软件简介 Hue 是运营和开发 Hadoop 应用的图形化用户界面。Hue 程序被整合到一个类似桌面的环境,以 web 程序的形式发布,对于单独的用户来说不需要额外的安装。

綦江蜘蛛池四川官网下载

baidu搜索:如何联系八爪鱼SEO? baidu搜索:如何联系八爪鱼SEO? baidu搜索:如何联系八爪鱼SEO? CCSEO蜘蛛统计开发思路一般包括以下几个步骤: 定义需求:明确统计蜘蛛访问数据的目标和要求,例如需要获取哪些信息,统计的精度和频率等。 确定数…

springboot小型超市商品展销系统-计算机毕业设计源码01635

摘 要 科技进步的飞速发展引起人们日常生活的巨大变化,电子信息技术的飞速发展使得电子信息技术的各个领域的应用水平得到普及和应用。信息时代的到来已成为不可阻挡的时尚潮流,人类发展的历史正进入一个新时代。在现实运用中,应用软件的工作…

thinkphp5使用模型删除与复杂查询EXP

模型删除 应用软删除 表中需要有字段,deletetime 模型中使用下面方法 use SoftDelete;protected $deleteTime delete_time;真实删除 // 软删除 User::destroy(1); // 真实删除 User::destroy(1,true); $user User::get(1); // 软删除 $user->delete(); // 真…

Python批量保存Excel文件中的图表为图片

Excel工作簿作为一款功能强大的数据处理与分析工具,被广泛应用于各种领域,不仅能够方便地组织和计算数据,还支持用户创建丰富多彩的图表,直观展示数据背后的洞察与趋势。然而,在报告编制、网页内容制作或分享数据分析成…

SFTP共享配置

SFTP一般指SSH文件传输协议,在计算机领域,SSH文件传输协议(英语:SSH File Transfer Protocol,也称Secret File Transfer Protocol,中文:安全文件传送协议,英文:Secure FT…

FFmpeg中内存分配和释放相关的源码:av_malloc函数、av_mallocz函数、av_free函数和av_freep函数分析

一、av_malloc函数分析 (一)av_malloc函数的声明 av_malloc函数的声明放在在FFmpeg源码(本文演示用的FFmpeg源码版本为5.0.3,该ffmpeg在CentOS 7.5上通过10.2.1版本的gcc编译)的头文件libavutil/mem.h中:…

nvm 报错https://npm.taobao.org/mirrors/node/index.json 淘宝镜像更换

文章目录 一、问题背景二、解决问题1. 获取配置文件的位置2. 修改配置文件中的镜像源配置3. 修改 npm 镜像源 一、问题背景 使用nvm的时候报错: Could not retrieve https://npm.taobao.org/mirrors/node/index.json. 由于淘宝的镜像域名更换,npm.taobao.org 域名…

Airflow任务流调度

0 前言 Airflow是Airbnb内部发起的一个工作流管理平台。使用Python编写实现的任务管理、调度、监控工作流平台。Airflow的调度依赖于crontab命令,与crontab相比,Airflow可以方便地查看任务的执行状况(执行是否成功、执行时间、执行依赖等&…

Elixir学习笔记——自定义符号

Elixir 提供双引号字符串以及一个称为 charlists 的概念,它们使用 ~c“hello world”符号语法定义。在本章中,我们将了解有关符号的更多信息以及如何定义我们自己的符号。 Elixir 的目标之一是可扩展性:开发人员应该能够扩展语言以适应任何特…

Vatee万腾平台,让智能更懂你

在数字化浪潮席卷全球的今天,智能科技已经渗透到我们生活的方方面面。然而,真正的智能不仅仅是技术的堆砌,更是对人性需求的深刻理解和满足。Vatee万腾平台,正是这样一个让智能更懂你的平台,它以其独特的方式&#xff…

select 下拉框不可选

select 下拉框不可选 disabled和readonlyselect 下拉框不可选择CSS pointer-events 属性 通常情况下,设置表单输入框不可操作的时候会选择使用disabled或者readonly,那么disabled和readonly有什么区别呢? disabled和readonly 首先来说这两个…

vscode插件开发之 - 消息通信

在开发vscode插件过程中,有一个典型场景是webview与extension.ts进行通信,例如,webview上的某些信息发送改变时,需要发送消息传递给extension.ts. 如果使用react框架构建vscode插件的webview,如何实现webview与extensi…

怎么把两个音频合成一个?将两个音频合成一个的四种方法

怎么把两个音频合成一个?在当今数字化的时代,音频处理已经成为我们生活中不可或缺的一部分。有时候,我们会希望将两段音频合成为一个,无论是为了制作音乐混音、创作声音效果,还是为了编辑播客节目或视频配音。合成音频…