在Linux中进行OpenSSH升级(编译安装在openssh目录)

由于OpenSSH有严重漏洞,因此需要升级OpenSSH到最新版本。

注意:在OpenSSH升级过程中千万不要断开服务器连接,不然的话,会出现断开后连接不了服务器的情况。

第一步,查看当前的OpenSSH服务版本。

命令:ssh -V

 

第二步,下载OpenSSH。

登录网址:OpenSSH: Release Notes下载最新版本OpenSSH安装包,即openssh-9.7p1.tar.gz,然后使用WinSCP将安装包上传到/opt文件夹中。

注意:卸载OpenSSH的rpm安装包之前一定要先把下载的OpenSSH安装包上传到服务器中。

第三步,安装、启动telnet,关闭安全文件,防止因卸载OpenSSH而导致无法登录主机。

# 安装、启动telnet

命令:yum -y install telnet

yum -y install telnet-server

systemctl enable telnet.socket

systemctl start telnet.socket

# 关闭安全文件

命令:mv /etc/security /etc/security.bak

第四步,安装升级OpenSSH需要的依赖包。

命令:yum -y install gcc keyutils-libs rpm-build krb5-devel libcom_err-devel libselinux-devel pam-* openssl-devel pkgconfig vsftpd zlib*

第五步,备份原有的SSH服务版本。

命令:mv /etc/ssh /etc/ssh.bak

mv /usr/bin/ssh /usr/bin/ssh.bak

mv /usr/sbin/sshd /usr/sbin/sshd.bak

第六步,卸载OpenSSH的rpm安装包。

命令:rpm -qa | grep openssh

# 普通删除模式

命令:rpm -e `rpm -qa | grep openssh`

# 如果使用普通删除模式命令删除时,提示有依赖的其它文件,则用强力删除模式命令对其进行强力删除

命令:rpm -e `rpm -qa | grep openssh` --nodeps

 

第七步,编译安装OpenSSH。

# 解压OpenSSH

命令:cd /opt

tar zxvf openssh-9.7p1.tar.gz

# 编译安装OpenSSH

命令:cd /opt/openssh-9.7p1/

./configure --prefix=/usr/local/openssh \

--sysconfdir=/etc/ssh \

 --with-ssl-dir=/usr/local/openssl \

--with-zlib=/usr/local/zlib

make && make install

 

第八步,查看OpenSSH命令的执行路径。

命令:find / -name sshd

 

第九步,复制源码解压路径的开机启动脚本到/etc/init.d文件夹下。

命令:cp /opt/openssh-9.7p1/contrib/redhat/sshd.init /etc/init.d/sshd

第十步,修改开机启动脚本/etc/init.d/sshd。

编辑/etc/init.d/sshd,对开机启动脚本做如下修改:

“SSHD=/usr/sbin/sshd”修改为“SSHD=/usr/local/openssh/sbin/sshd”;

“/usr/bin/ssh-keygen -A”修改为“/usr/local/openssh/bin/ssh-keygen -A”。

也可以使用命令来进行编辑开机启动脚本。

命令:sed -i '25cSSHD=/usr/local/openssh/sbin/sshd' /etc/init.d/sshd

sed -i '41c/usr/local/openssh/bin/ssh-keygen -A' /etc/init.d/sshd

第十一步,修改配置文件sshd_config,允许root用户通过ssh远程登录。

命令:sed -i "/#PermitRootLogin prohibit-password/c\PermitRootLogin yes" /etc/ssh/sshd_config

第十二步,复制源码解压路径的ssh-copy-id文件到文件夹/usr/local/openssh/bin/下,并增加ssh-copy-id文件的执行权限。

命令:cp /opt/openssh-9.7p1/contrib/ssh-copy-id /usr/local/openssh/bin/

chmod +x /opt/openssh-9.7p1/contrib/ssh-copy-id

第十三步,启动sshd服务并验证更新是否成功。

命令:systemctl daemon-reload

service sshd start

/usr/local/openssh/bin/ssh -V

若结果显示“OpenSSH_9.7p1”,则说明OpenSSH升级成功。

 

第十四步,开启安全文件。

命令:mv /etc/security.bak /etc/security

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

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

相关文章

DataEase v2 开源代码 Windows 从0到1环境搭建

一、环境准备 功能名称 描述 其它 操作系统 Windows 数据库 Mysql8.0 开发环境 JDK17以上 本项基于的21版本开发 Maven 3.9版本 开发工具 idea2024.2版本 前端 VSCode TIPS:如果你本地有jdk8版本,需要切换21版本,请看…

C语言 | Leetcode C语言题解之第448题找到所有数组中消失的数字

题目&#xff1a; 题解&#xff1a; int* findDisappearedNumbers(int* nums, int numsSize, int* returnSize) {for (int i 0; i < numsSize; i) {int x (nums[i] - 1) % numsSize;nums[x] numsSize;}int* ret malloc(sizeof(int) * numsSize);*returnSize 0;for (in…

遥感图像文本检索

遥感图像文本检索是一种通过自然语言描述&#xff0c;从大量遥感图像中搜索与之相关的图像的技术。它用于遥感解释任务中&#xff0c;帮助用户根据文字描述快速找到符合条件的遥感图像&#xff0c;这在城市规划、环境监测、灾害管理等领域具有重要应用意义。 实现这一技术的核…

线路交换与分组交换的深度解析

1. 线路交换 原理 线路交换是一种在通信双方之间建立固定通信路径的方式。当用户发起通信时&#xff0c;网络为其分配一条专用的物理通道&#xff0c;这条通道在整个通话过程中保持不变。这意味着在通话期间&#xff0c;其他用户无法使用这条线路。 优点 稳定性&#xff1a…

记录一次出现循环依赖问题

具体的结构设计&#xff1a; 在上面的图片中&#xff1a; UnboundBlackVerifyChain类中继承了UnboundChain类。但是UnboundChain类中注入了下面三个类。 Scope(“prototype”) UnboundLinkFlowCheck类 Scope(“prototype”) UnboundUserNameCheck类 Scope(“prototype”) Un…

【刷题6】一维前缀和、二维前缀和

目录 一、一维前缀和二、二维前缀和 一、一维前缀和 题目&#xff1a; 思路&#xff1a; 一、前缀和&#xff0c;时间复杂度O&#xff08;1&#xff09;&#xff0c;快速得到区间的值 二、预处理&#xff0c;公式——dp[i] dp[i-1] arr[i] 三、使用前缀和&#xff0c;根据…

VUE a-table 动态拖动修改列宽+固定列

实现效果 实现思路 自定义表头&#xff0c;在标题后面加两个标签&#xff0c;分别用来显示拖拽图标&#xff08;cursor: col-resize&#xff09;&#xff0c;和蓝色标记线&#xff08;有的时候鼠标移动过程中不一定会在表内&#xff0c;这个时候不显示图标&#xff0c;只显示蓝…

综合练习 学习案例

//验证码 前四位是字母 最后一位是数字 public class test1 {public static void main(String[] args){char [] charsnew char[52];for (int i 0; i <chars.length ; i) {if(i<25){chars[i](char)(i97);}else{chars[i](char)(i65-26);}}Random rnew Random();String cod…

828华为云征文|华为云Flexus云服务器X实例部署 即时通讯IM聊天交友软件——高性能服务器实现120W并发连接

营运版的即时通讯IM聊天交友系统&#xff1a;特点可发红包&#xff0c;可添加多条链接到用户网站和应用&#xff0c;安卓苹果APPPC端H5四合一 后端开发语言&#xff1a;PHP&#xff0c; 前端开发语言&#xff1a;uniapp混合开发。 集安卓苹果APPPC端H5四合一APP源码&#xff0…

语音转文字免费利器:助力高效办公与学习

语音转文字免费的软件如同一股清流&#xff0c;让我们能够更轻松地将语音信息转化为可编辑的文字内容。今天我们一起来分析它们的功能、特点以及如何为我们的生活和工作带来便利。 1.365在线转文字 链接直达&#xff1a;https://www.pdf365.cn/ 这是一个功能强大的在线工具…

量化必备!股票常用数据批量下载、定时更新,代码打包好了!

上一节课我详细演示了从tushare获取股票列表和基本信息并且配置定时更新任务的详细流程&#xff0c;旨在教会想要学习通过Python获取股票数据并且定期更新的朋友。 不过有很多朋友完全没有Python基础&#xff0c;如果一开始把大量时间花费在搞数据上&#xff0c;本末倒置不说&…

如果您忘记了 Apple ID 和密码,按照指南可重新进入您的设备

即使您的 iPhone 或 iPad 由于各种原因被锁定或禁用&#xff0c;也可以使用 iTunes、“查找我的”、Apple 支持和 iCloud 解锁您的设备。但是&#xff0c;此过程需要您的 Apple ID 和密码来验证所有权并移除激活锁。如果您忘记了 Apple ID 和密码&#xff0c;请按照我们的指南重…

【PyTorch】图像分割

图像分割是什么 Image Segmentation 将图像每一个像素分类 图像分割分类 超像素分割&#xff1a;少量超像素代替大量像素&#xff0c;常用于图像预处理语义分割&#xff1a;逐像素分类&#xff0c;无法区分个体实例分割&#xff1a;对个体目标进行分割全景分割&#xff1a;…

动态库的加载全过程

区分一组概念&#xff1a;逻辑地址&#xff0c;虚拟地址&#xff0c;物理地址。 逻辑地址&#xff1a;是我们的代码在编译过程&#xff0c;编译器帮对每一条代码所生成的指令所编写的地址。 物理地址&#xff1a;当程序被放入到内存中时&#xff0c;内存与每一条指令所对应的…

031集——文本文件按空格分行——C#学习笔记

如下图&#xff0c;读取每行文本&#xff0c;每行文本再按空格分开读取一个字符串&#xff0c;输出到另一个文本&#xff1a; CAD环境下&#xff0c;代码如下&#xff1a; using Autodesk.AutoCAD.DatabaseServices; using Autodesk.AutoCAD.Runtime; using System; using Sys…

笔记本电脑如何改ip地址:操作指南与注意事项

在信息时代的浪潮中&#xff0c;网络已成为我们日常生活与工作中不可或缺的一部分。对于笔记本电脑用户而言&#xff0c;IP地址作为设备在网络中的唯一标识&#xff0c;其重要性不言而喻。无论是出于网络安全、网络测试还是特殊网络环境等需求&#xff0c;了解如何修改笔记本电…

制造企业各部门如何参与生产成本控制与管理?

​国内制造业的分量可不轻&#xff0c;从日常生活用品到高端工业设备&#xff0c;中国制造几乎涵盖了各个领域。 不过很多制造业企业在管理方面确实存在一些难题&#xff1a;成本控制不容易&#xff0c;产品质量并不稳定&#xff0c;生产周期也常常较长。 一、中国制造业生产管…

仿真设计|基于51单片机的商用电子计价秤设计

目录 具体实现功能 设计介绍 51单片机简介 资料内容 仿真实现&#xff08;protues8.7&#xff09; 程序&#xff08;Keil5&#xff09; 全部内容 资料获取 具体实现功能 &#xff08;1&#xff09;通电时电子秤进入欢迎界面&#xff0c;显示“欢迎使用电子秤 设计学生…

【SQLite】基础操作

数据查询 SELECT 查询所有数据 SELECT *FROM tableName使用AND操作符 SELECT * FROM tableName WHERE id=? AND name=?使用OR操作符 SELECT * FROM tableName WHERE id=? OR name=?组合使用AND和OR SELECT * FROM tableName WHERE (id=? AND name=?) OR status=?多表查询…

vue3+PPTXjs 在线ppt预览

- 使用PPTXjs做ppt预览&#xff0c;有完整的代码包&#xff0c;基于jquery - vue3使用iframe引入用于预览ppt的网页&#xff0c;通过url参数传递需要预览的ppt链接 - 通过网页选择文件上传也可以通过下面的函数把文件转换成链接&#xff0c;实现在文件上传到服务器前就可以预…