Linux系统OpenSSH_9.7p1升级详细步骤

版本说明

当前内核版本如下

当前操作系统版本如下

当前OpenSSH版本和OpenSSL版本如下

升级说明

openssh依赖于openssl和zlib,而openssl依赖于zlib,所以我们要先安装zlib,然后是openssl,最后是openssh
zlib-1.3.1下载地址https://www.zlib.net/zlib-1.3.1.tar.gz
openssl-3.2.1下载地址https://www.openssl.org/source/openssl-3.2.1.tar.gz
openssh-9.7p1下载地址https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.7p1.tar.gz

升级步骤

备份配置

cp -rf /etc/ssh /etc/ssh.20240614bak
cp -rf /usr/bin/openssl /usr/bin/openssl.20240614bak
cp -rf /etc/pam.d /etc/pam.d.20240614bak
cp -rf /usr/lib/systemd/system /usr/lib/systemd/system.20240614bak

安装telnet

此步主要是防止openssh升级过程中出现异常,导致ssh无法使用,无法远程登陆服务器,此时可以用telnet暂时登陆服务器使用

检查一下之前有没有安装过

rpm -qa telnet-server

rpm -qa | grep xinetd

然后进行安装

yum -y install telnet-server telnet xinetd

启动服务

systemctl start telnet.socket
systemctl start xinetd

加入开机自启动

systemctl enable xinetd.service
systemctl enable telnet.socket

开放防火墙23端口
firewall-cmd --zone=public --add-port=23/tcp --permanent
重新加载防火墙规则
firewall-cmd --complete-reload
查询23端口放行情况
firewall-cmd --query-port=23/tcp
开放telnet明文登录
sed -i 's/^auth[[:space:]]\+required[[:space:]]\+pam_securetty.so/#&/' /etc/pam.d/remote

telnet登陆测试

安装依赖及编译环境

yum install -y vim gcc gcc-c++ glibc make autoconf openssl openssl-devel pcre-devel pam-devel zlib-devel tcp_wrappers-devel tcp_wrappers libedit-devel perl-IPC-Cmd wget tar lrzsz nano

下载源码包

先进入到/usr/local/src目录下,把需要源码包都下载下来

cd /usr/local/src
wget https://www.zlib.net/zlib-1.3.1.tar.gz
wget https://www.openssl.org/source/openssl-3.2.1.tar.gz
wget https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.7p1.tar.gz

查看源码包都在该目录下

然后解压

tar -zxvf zlib-1.3.1.tar.gz
tar -zxvf openssl-3.2.1.tar.gz
tar -zxvf openssh-9.7p1.tar.gz

查看源码包都已经解压好

安装zlib

进入目录        cd /usr/local/src/zlib-1.3.1

配置        ./configure --prefix=/usr/local/src/zlib

编译安装(时间根据机器性能而定)        make -j 4 && make install

安装openssl

进入目录        cd /usr/local/src/openssl-3.2.1

配置        ./config --prefix=/usr/local/src/openssl

编译安装(时间根据机器性能而定)        make -j 4 && make install

配置
mv /usr/bin/openssl /usr/bin/oldopenssl
ln -s /usr/local/src/openssl/bin/openssl /usr/bin/openssl
ln -s /usr/local/src/openssl/lib64/libssl.so.3 /usr/lib64/libssl.so.3
ln -s /usr/local/src/openssl/lib64/libcrypto.so.3 /usr/lib64/libcrypto.so.3
更新动态库
echo "/usr/local/src/openssl/lib64" >> /etc/ld.so.conf
ldconfig
查看更新后的版本
openssl version -v

安装openssh

卸载旧版本openssh       yum remove -y openssh

清理残余文件        rm -rf /etc/ssh/*

进入openssh-9.7p1目录
cd /usr/local/src/openssh-9.7p1
配置
./configure --prefix=/usr/local/src/ssh --sysconfdir=/etc/ssh --with-pam --with-ssl-dir=/usr/local/src/openssl --with-zlib=/usr/local/src/zlib

编译安装
make -j 4 && make install

查看目录版本
/usr/local/src/ssh/bin/ssh -V

复制新ssh文件
cp -rf /usr/local/src/openssh-9.7p1/contrib/redhat/sshd.init /etc/init.d/sshd
cp -rf /usr/local/src/openssh-9.7p1/contrib/redhat/sshd.pam /etc/pam.d/sshd

cp -rf /usr/local/src/ssh/sbin/sshd /usr/sbin/sshd
cp -rf /usr/local/src/ssh/bin/ssh /usr/bin/ssh
cp -rf /usr/local/src/ssh/bin/ssh-keygen /usr/bin/ssh-keygen

允许root登录
echo 'PermitRootLogin yes' >> /etc/ssh/sshd_config
echo 'PasswordAuthentication yes' >> /etc/ssh/sshd_config

重启sshd服务
/etc/init.d/sshd restart

查看服务运行状态
/etc/init.d/sshd status

添加开机启动
chkconfig --add sshd
查看升级后ssh版本
ssh -V

这时我们查看,openssh已经成功升级到9.7p1版本,接下来我们用ssh进行一下登陆测试,没有问题

卸载telnet

由于Telnet协议使用明文传输数据,用户的传输数据的安全性得不到保障,建议将telnet卸载

停止telnet.socket服务        systemctl stop telnet.socket

停止telnet.socket开机自启        systemctl disable telnet.socket

查看当前telnet.socket服务状态        systemctl status telnet.socket

同样对xinetd服务也做上面的操作

删除包        yum -y remove telnet-server telnet xinetd

查看防火墙23端口是否开放        firewall-cmd --query-port=23/tcp

关闭防火墙23端口         firewall-cmd --zone=public --remove-port=23/tcp --permanent

重新加载防火墙规则        firewall-cmd --complete-reload

再次查看防火墙23端口是否开放        firewall-cmd --query-port=23/tcp

关闭telnet明文登录        vim /etc/pam.d/remote

原来的文件

修改为(把第二行的注释去掉即可)

升级结束

至此,OpenSSH_9.7p1升级结束。文章可能还有一些不足之处请谅解。有问题大家可以留下评论,大家共同探讨,共同进步!

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Folly,一个强大的C++库

目录 1.引言 2.Folly库的特点 3.Folly库的应用场景 4.示例代码 5.总结 1.引言 Folly 是Facebook开发的一个开源、无许可(Apache 2.0)的现代C库,旨在提升性能和简化编写复杂任务的工作流程。它包含了一系列用于系统级编程的工具&#xff…

白蚁监测装置:支持北斗定位

TH-BY2白蚁监测控制管理系统原理 采用白蚁喜欢吃的食物做诱饵,吸引白蚁取食,取食过程中触动报警装置。报警装置发出信号,通过物联网传输到监控系统,经过数据处理,监测结果呈现给用户。用户通知白蚁防治专业人员&#x…

618数码好物有哪些?热门榜单强势出炉

大家好!随着6.18购物狂欢节的来临,我可以明白在面对非常吸引人的商品时,“选择困难症”就上来了。因此,为了帮助大家在这场购物盛事中有方向,我特意结合个人使用体验和市场研究,为大家筛选了几件既具有超高…

CSP-J/S初赛01 计算机概述和计算机硬件系统

第1节 计算机概述 1.1 计算机的发展 代别 年代 逻辑(电子)元件 第一代 1946-1958 真空电子管 第二代 1959-1964 晶体管 第三代 1965-1970 集成电路 第四代 1971-至今 大规模、超大规模集成电…

Einops 张量操作快速入门

张量,即多维数组,是现代机器学习框架的支柱。操纵这些张量可能会变得冗长且难以阅读,尤其是在处理高维数据时。Einops 使用简洁的符号简化了这些操作。 Einops (Einstein-Inspired Notation for operations)&#xff…

HTTP 415错误状态码

HTTP 415错误状态码是指"Unsupported Media Type"(不支持的媒体类型)。这通常发生在客户端向服务器发送请求时,请求中包含的媒体类型(例如Content-Type头部)不被服务器支持或识别的情况下。 解决方法&#…

Erpnext安装

Erpnext安装 环境要求 Ubuntu 23.04 x86_64 Python 3.10.12 pip 23.0.1 node v18.16.0 npm 9.5.1 yarn 1.22.22 MariaDB 10.11.2 Redis 7.0.8 wkhtmltox 0.12.6.1 bench 5.22.6环境安装 Reids 安装 // 安装7.0.8 也可不指定版本 直接执行 sudo apt install redis-server s…

XX集团网上客户管理系统投标书技术部分(358页WORD)

方案介绍:针对客户不断增加的便民查询,业务受理等实际需求,我们将积极整合国内外人才、技术、产品资源,打造XX最便捷的网上处理平台。在平台建设和运营基础上,持续探索各种创新模式,发展多种有针对性的衍生…

攻防演练“轻装上阵” | 亚信安全信舱ForCloud 打造全栈防护新策略

网络世界攻防实战中,攻击风险已经从代码到云横跨全栈技术点,你准备好了吗 云服务器,攻击众矢之的 2022年超过38万个Kubernetes API服务器暴露公网,成为攻击者目标。云服务器,尤其是开源设施,一直以来不仅是…

拐点 万维钢电子书(拐点万维钢下载在线阅读)

本文节选自《拐点万维钢》在线阅读 医院急诊室有个特别常见的状况是病人胸口痛。对这种情 况,医生必须判断是不是心脏病,是心脏病就得赶紧处置。但问题 是,急诊医生并没有很好的诊断方法。 通常的做法是搞个正式的检查,而心脏病检…

碳课堂 | 手把手教你申报CBAM

CBAM全称为 Carbon Border Adjustment Mechanism,也被称作“碳关税”或“碳边境调节机制”,是指在实施国内严格气候政策的基础上,要求进口或出口的高碳产品缴纳或退还相应的税费或碳配额。目前,由于欧盟碳边境调节机制是全球第一个…

示例:WPF中在没有MouseDoubleClick的控件中如何识别双击

一、目的&#xff1a;由于MouseDoubleClick控件是在Control中实现&#xff0c;那么在底层控件如Grid中想要类似功能如何实现&#xff0c;这里通过MouseDown的事MouseButtonEventArgs参数去实现 二、实现 定义Grid并注册Grid的MouseDown事件 <Grid Background"Transpa…

Ubuntu,Centos,Linux服务器安装Mellanox MCX653105A IB网卡HCA卡驱动

Mellanox 官方驱动下载地址 https://network.nvidia.com/products/infiniband-drivers/linux/mlnx_ofed/ 选择对应操作系统 官方链接速度比较慢&#xff0c;推荐个友商的下载地址 https://support.xfusion.com/support/#/zh/rack-servers/2288h-v5-pid-21872244/software …

对 PLC AC 模块的 TRIAC 输出进行故障排除

在大多数离散 PLC 系统中&#xff0c;排除输出设备故障的过程相当简单。如果输出端正常工作&#xff0c;则在“关闭”时应测量 0 V&#xff0c;在“开启”时应测量满源电压。对于数字和继电器输出&#xff0c;情况确实如此。对于由 TRIAC 驱动的 AC 输出也应如此&#xff0c;但…

C++通过VS2022使用Conan2.0安装fmt库实现控制台彩色打印

Conan是一个开源的C/C包管理器&#xff0c;用于管理和构建C/C项目的依赖关系。它允许开发人员轻松地集成第三方库、工具和资源到他们的项目中&#xff0c;并管理这些依赖项的版本、构建选项和配置。 Conan官方提供了对应的VS2022扩展插件&#xff0c;通过这个插件再搭配VS2022…

如何正确操作工业高温烤箱

高温烤箱广泛应用于陶瓷、丝印、汽车配件、电子、机电、通讯、化工、器材、印刷、制药、工业、橡胶、油漆、食品之烘烤、水份干燥、预热等用途。那么要想工业高温烤箱在使用的过程中能够正常运行&#xff0c;那么正确的操作是必不可少的&#xff0c; 1、防止触电&#xff1a;高…

电脑文件防泄密软件——天锐绿盾 - 中科数安—— 哪个好

在选择电脑文件防泄密软件时&#xff0c;天锐绿盾和中科数安都是值得考虑的选项。以下是对这两款软件的详细比较&#xff1a; www.drhchina.com PC地址&#xff1a; https://isite.baidu.com/site/wjz012xr/2eae091d-1b97-4276-90bc-6757c5dfedee 功能全面性&#xff1a; 天锐…

具身智能的视觉-语言-动作模型综合综述论文

近期arXiv公开了关于具身智能&#xff08;Embodied AI&#xff09;中的视觉-语言-动作模型&#xff08;Vision-Language-Action Models&#xff0c;简称VLAs&#xff09;的综合综述论文。介绍了VLAs的概念&#xff0c;它们是为了处理多模态输入而设计的模型&#xff0c;包括视觉…

移动硬盘数据恢复,6个亲测有效方法公开!

“我的移动硬盘已经用了很久了&#xff0c;最近不知道是怎么回事&#xff0c;里面有部分重要的数据居然不见了。想问问大家有什么方法可以恢复移动硬盘的数据吗&#xff1f;” 在数字时代的浪潮中&#xff0c;移动硬盘已成为我们存储和携带数据的重要工具。从海量的工作文档、珍…

java 对象实际占用内存大小预估工具类ObjectSizeUtil

java 对象实际占用内存大小预估工具类 返回对象占用预估字节数 返回字节数对应格式化后的字符串&#xff08;xx Kb&#xff09; 使用效果 依赖了lombock和hutool&#xff0c;项目不用这个可以去掉日志&#xff0c;稍微改写一下。 import cn.hutool.core.util.ClassUtil; i…