《Linux运维总结:Centos7.6之OpenSSH7.4p1升级版本至9.4p1》

news2024/9/24 10:17:43

Centos通过yum升级OpenSSH

在官方支持更新的CentOS版本,如果出现漏洞,都会通过更新版本来修复漏洞。这时候直接使用yum update就可以升级版本。

yum -y update openssh

但是,CentOS更新需要有一段时间,不能在漏洞刚出来的时候就有更新包。这时候就可以使用源码编译OpenSSH,来升级版本,修复漏洞。

源码编译安装OpenSSH

编译的时候需要一些依赖包及编译工具,需要先安装一下。

yum -y install wget tar gcc make wget openssl-devel pam-devel rpm-build

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

(此链接需要翻**墙才能访问,我下载好放百度网盘里了)

wget -c https://www.openssl.org/source/openssl-1.1.1v.tar.gz  --no-check-certificate

wget -c   https://zlib.net/current/zlib.tar.gz

百度网盘

portable/openssh-9.4p1.tar.gz

链接:https://pan.baidu.com/s/1yUP1ixDd3-Dfoc4fB0TH8A?pwd=o2im 
提取码:o2im 

tar zxvf openssh-9.4p1.tar.gz

tar zxvf openssl-1.1.1v.tar.gz

tar zxvf zlib-1.3.tar.gz

cd zlib-1.3

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

make&&make install

cd  openssl-1.1.1v

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

#默认没有编译出.so的文件,而openssh编译的时候需要,所以需要手动添加 -d shared的选项

make && make install

echo '/usr/local/ssl/lib' >> /etc/ld.so.conf

ldconfig -v

cd ../openssh-9.4p1

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

make && make install

更改默认端口

vim /usr/local/openssh/etc/sshd_config

更改为

Port 2222

 

把上图的PermitRootLogin,PubkeyAuthentication的设置打开。

启动

/usr/local/openssh/sbin/sshd -f /usr/local/openssh/etc/sshd_config

如果不指定配置文件也可以,默认就是加载 /usr/local/openssh/etc/sshd_config

如果是CentOS6可以修改/etc/init.d/sshd中的对应路径即可,如果是CentOS 7需要修改/usr/lib/systemd/system/sshd.service。

更换sshd服务路径

vim /usr/lib/systemd/system/sshd.service

为了方便使用可以修改PATH变量

echo 'PATH=/usr/local/openssh/bin:/usr/local/openssh/sbin:$PATH' >> /etc/profile

source /etc/profile

ssh -V

OpenSSH_7.9p1, OpenSSL 1.0.2q 20 Nov 2018

回退

如果是使用yum一般都是没有问题,都是经过测试的。

如果是源码编译回退也是简单,只要把启动脚本里面的程序路径修改一下即可。

总结

升级过程一般不可能跑去机房蹲着升级;如果是yum升级,也是比较稳定的,直接重启sshd服务即可。

如果是源码编译呢?也可以直接kill sshd这个进程,远程是不会断开了,升级过程都不要断开,然后真的就连接不上了。

如果怕网络突然断开,导致远程连接不上,可以先启动sshd进程,使用 -f 指定另外的配置文件,端口指定非22端口,等升级完成,再关闭即可。

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

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

相关文章

SpringBoot实现热部署/加载

在我们修改完项目代码后希望不用重启服务器就能把项目代码部署到服务器中(也就是说修改完项目代码后不用重启服务器修改后的项目代码就能生效)。 一、实现devtools原理 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-…

内网渗透神器CobaltStrike之凭据的导出与存储(八)

简介 Cobalt Strike 是一个流行的渗透测试工具&#xff0c;主要用于模拟高级持续性威胁&#xff08;APT&#xff09;的攻击。它提供了许多功能来操作、持久化和操纵受害者机器。其中&#xff0c;凭据的导出和存储是渗透测试中的一个重要步骤。 凭据导出: Cobalt Strike 通过其…

Vue前端封装一个任务条的组件进行使用

任务条 样式 代码 父组件 <articleSteps :tabs"tabs" :tabs-active-name"tabsActiveName" /><div class"drawer__footer"><el-button v-if"tabsActiveName 1 || tabsActiveName 2" click"backClick">…

面试了几十家,整理出这份车载测试面试题

年前有朋友找工作&#xff0c;跟我说简历改了车载后&#xff0c;收到的打招呼翻了几倍&#xff0c;如今车载测试前景非常广阔&#xff0c;因为越来越多的汽车厂商正在开发新的可智能化的汽车&#xff0c;他们需要测试这些汽车的性能&#xff0c;安全性以及可靠性。 车载测试技…

面试时,如何向HR解释自己频繁跳槽?

有数据显示&#xff0c;现在的职场人&#xff0c;跳槽越来越频繁&#xff0c;95后平均7个月就离职。 对于面试官来说&#xff0c;一个跳槽过于频繁的人总是存在潜在风险&#xff0c;比如抗压力差、稳定性不好、心不定这山望着那山高、职业规划不清晰等等。 我一直强调一个观点…

WXSS的全局样式和局部样式

什么是WXSS? WXSS中的样式和css差不多&#xff0c;是用于给WXML页面来设置样式的&#xff0c;但是WXSS中扩展了rpx尺寸单位和import样式导入 rpx:根据不同的屏幕自动进行适配&#xff0c;把设备屏幕的宽度等分为750份(设备的总宽度750rpx) import: 用于进行样式的导入 通过inp…

get Error: aborted,net::ERR_INCOMPLETE_CHUNKED_ENCODING 200 (OK) 问题解决

先说结论&#xff1a;由于磁盘空间满导致部分数据接口无法正常反馈结果。 今天前线业务人员忽然说&#xff0c;有个页面刷新后白屏。经过验证确实有这种情况。页面上用开发者工具查看请求和报错信息&#xff0c;发现一个请求所有字典数据的接口没有反馈数据&#xff0c…

无人机精细化巡检方案制定:提高效率与准确性的关键

在当前技术日新月异的时代&#xff0c;无人机在多个领域的应用已成为行业标配。但如何制定出一套有效、细致的无人机巡检方案&#xff0c;确保其最大效能&#xff0c;成为许多组织与公司的核心议题。其中&#xff0c;复亚智能在此领域已展现出了卓越的实力与深入的见解。 1. 精…

【LeetCode-困难题】42. 接雨水

题目 题解一&#xff1a;暴力双重for循环&#xff08;以行计算水量&#xff09; 1.先找出最高的柱子有多高&#xff08;max 3&#xff09; 2.然后第一个for为行数&#xff08;1&#xff0c;2&#xff0c;3&#xff09; 3.第二个for计算每一行的雨水量&#xff08;关键在于去除…

06 mysql all查询 和 主键查询 和 非索引列查询

前言 本文主要调试一下 mysql 的如下两种查询语句 我们也来深入的看一下, 究竟如下两个普通的查询, mysql 做了什么事情 1. select * from user where id 991; 2. select * from user; 3. select * from user where name jerry991; 环境介绍 测试表 user schema 如下…

极限学习机(ELM)的原理和matlab代码实现

单隐含层前馈神经网络(Single - hidden Layer Feedforward Neural Network,SLFN)以其良好的学习能力在许多领域得到了广泛的应用。然而,传统的学习算法(如 BP算法等)固有的一些缺点,成为制约其发展的主要瓶颈。前馈神经网络大多采用梯度下降方法,该方法主要存在以下几个方面的缺…

机器人操作系统【02】:如何在 ROS2 中对点云数据进行建模

一、说明 RViz和Gazebo中RADU的模拟进展顺利。在上一篇文章中&#xff0c;我们学习了如何启动机器人并使用远程节点进行操作。在本文中&#xff0c;我们将添加两个视觉传感器。首先&#xff0c;一个图像摄像机&#xff0c;用于在机器人四处移动时查看机器人的实时馈送。其次&am…

Nginx高可用集群

目录 一.简介二.案例1.实现思路2.配置文件修改3.实现效果故障转移机制 一.简介 以提高应用系统的可靠性&#xff0c;尽可能地减少中断时间为目标&#xff0c;确保服务的连续性&#xff0c;达到高可用的容错效果。例如“故障切换”、“双机热备”、“多机热备”等都属于高可用集…

03:TIM定时器

目录 一:TIM 1:介绍 2:定时器的分类 3:基本定时器 4:通用定时器 5:高级定时器 6:定时器的基本结构 二:定时中断功能 A:定时器定时器中断 1:连接图 ​编辑 2:步骤 3:函数介绍 4:代码 三:外部时钟功能 A:定时器外部时钟 1:连接图 2:函数介绍 3:外部时钟代码 一…

【FreeRTOS】【应用篇】任务创建

前言 从本篇开始&#xff0c;将不再太过于关心 FreeRTOS 的内核细节&#xff0c;把重心转移到对 FreeRTOS 的应用上来。 本篇代码大部分参考野火的 FreeRTOS 教程。 一、静态任务和动态任务创建的区别 1. 概念解析 在 FreeRTOS 中&#xff0c;我们可以选择两个不同的函数进…

微信小程序,封装身高体重选择器组件

wxml代码&#xff1a; // 微信小程序的插值语法不支持直接使用Math <wxs src"./ruler.wxs" module"math"></wxs> <view class"ruler-container"><scroll-view scroll-left"{{scrollLeft}}" enhanced"{{tru…

探索软件项目管理的本质及概念

什么是软件项目管理&#xff1f; 软件项目管理是指对软件项目从规划、组织、指挥、控制到最终交付的全过程进行有效管理的一种方法。它通过合理的资源分配、有效的沟通和高效的协作&#xff0c;确保软件项目能够按照预定的目标、时间和质量要求完成。在现代信息技术逐渐普及和…

互联网企业内部FAQ的设计指南:帮助企业用户快速解决常见问题!

在互联网企业中&#xff0c;内部FAQ&#xff08;Frequently Asked Questions&#xff09;是帮助企业用户快速解决常见问题的重要工具。一个优秀的内部FAQ不仅可以提高用户满意度&#xff0c;还可以减轻客服团队的负担。本文将介绍互联网企业内部FAQ的设计指南&#xff0c;帮助企…

知识储备--基础算法篇-动态规划

1.前言 第一次接触动态规划&#xff0c;不知道具体什么意思&#xff0c;做了题才发现动态规划就是把大问题变成小问题&#xff0c;并解决了小问题重复计算的方法称为动态规划。比如上楼梯&#xff0c;一次上一阶或二阶&#xff0c;求有多少种算法&#xff0c;就可以拆成最后一…

Flutter 小技巧之 3.13 全新生命周期 AppLifecycleListener

Flutter 3.13 在 Framework 里添加了 AppLifecycleListener 用于监听应用生命周期变化&#xff0c;并响应退出应用的请求等支持&#xff0c;那它有什么特殊之处&#xff1f;和老的相比又有什么不同&#xff1f; 简单说&#xff0c;在 Flutter 3.13 之前&#xff0c;我们一般都…