CentOS7离线升级SSH至9.1P1

news2024/11/20 20:43:13

1、离线安装telnet(用telnet登录升级ssh,因为ssh升级时,ssh会话会断开)
(1)下载telnet、telnet-server、xinetd,并传到服务器上

http://rpmfind.net/linux/centos/7.9.2009/updates/x86_64/Packages/telnet-0.17-66.el7.x86_64.rpm
http://rpmfind.net/linux/centos/7.9.2009/updates/x86_64/Packages/telnet-server-0.17-66.el7.x86_64.rpm
http://rpmfind.net/linux/centos/7.9.2009/os/x86_64/Packages/xinetd-2.3.15-14.el7.x86_64.rpm

(2)安装telnet:在安装包所在目录执行

rpm -ivh telnet-0.17-66.el7.x86_64.rpm 
rpm -ivh telnet-server-0.17-66.el7.x86_64.rpm 
rpm -ivh xinetd-2.3.15-14.el7.x86_64.rpm 

在这里插入图片描述

(3)配置并启动Telnet,xinetd和telnet必须设置开机启动,否则无法启动Telnet服务

systemctl enable xinetd.service
systemctl enable telnet.socket

(4)接下来启动服务

systemctl start telnet.socket
systemctl start xinetd

(5)开启root登录权限
将服务端/etc/securetty文件备份重命名

mv /etc/securetty /etc/securetty.bak

(6)关闭防火墙,并取消防火墙开机自启

systemctl stop firewalld
systemctl disable firewalld

或开启防火墙23端口

iptables -A INPUT -p tcp --dport 23
iptables -L -n

(7)telnet登录后台
在这里插入图片描述

2、离线安装make、gcc、zlib、pam等编译需要的包(http://rpmfind.net/linux/RPM/index.html)
make-3.82-24.el7.x86_64.rpm

http://rpmfind.net/linux/centos/7.9.2009/os/x86_64/Packages/make-3.82-24.el7.x86_64.rpm

mpfr-3.1.1-4.el7.x86_64.rpm

http://rpmfind.net/linux/centos/7.9.2009/os/x86_64/Packages/mpfr-3.1.1-4.el7.x86_64.rpm

libmpc-1.0.1-3.el7.x86_64.rpm

http://rpmfind.net/linux/centos/7.9.2009/os/x86_64/Packages/libmpc-1.0.1-3.el7.x86_64.rpm

glibc-headers-2.17-222.el7.x86_64.rpm

http://rpmfind.net/linux/centos/7.9.2009/updates/x86_64/Packages/glibc-headers-2.17-324.el7_9.x86_64.rpm

glibc-devel-2.17-222.el7.x86_64.rpm

http://rpmfind.net/linux/centos/7.9.2009/os/x86_64/Packages/glibc-devel-2.17-317.el7.x86_64.rpm

cpp-4.8.5-28.el7.x86_64.rpm

http://rpmfind.net/linux/centos/7.9.2009/os/x86_64/Packages/cpp-4.8.5-44.el7.x86_64.rpm

gcc-4.8.5-28.el7.x86_64.rpm

http://rpmfind.net/linux/centos/7.9.2009/os/x86_64/Packages/gcc-4.8.5-44.el7.x86_64.rpm

pam-devel-1.1.8-23.el7.x86_64.rpm

http://rpmfind.net/linux/centos/7.9.2009/os/x86_64/Packages/pam-1.1.8-23.el7.x86_64.rpm

zlib-1.2.7-18.el7.x86_64.rpm

http://rpmfind.net/linux/centos/7.9.2009/os/x86_64/Packages/zlib-1.2.7-18.el7.x86_64.rpm

(1)新建一个目录gcc,将所有安装包上传到该目录

mkdir gcc
cd gcc

(2)强制安装以上rpm包

rpm  -ivh  *.rpm --nodeps --force

3、下载openssl和openssh
(1)下载openssh-9.1p1.tar.gz

https://mirrors.aliyun.com/pub/OpenBSD/OpenSSH/portable/openssh-9.1p1.tar.gz?spm=a2c6h.25603864.0.0.686840adx4Vfgj

(2)下载openssl-1.1.1s.tar.gz

https://www.openssl.org/source/openssl-1.1.1s.tar.gz

4、升级openssl
(1)备份原来的openssl

mv /usr/bin/openssl{,.bak}
mv /usr/include/openssl{,.bak}

(2)编译安装新的opensslc

tar -zxvf openssl-1.1.1s.tar.gz
cd openssl-1.1.1s/
./config shared && make && make install

(3)建立软连接

ln -s /usr/local/bin/openssl /usr/bin/openssl
ln -s /usr/local/include/openssl/ /usr/include/openssl

(4)重新加载配置,验证openssl版本

echo "/usr/local/lib64" >> /etc/ld.so.conf
/sbin/ldconfig
openssl version

(5)可能会有以下报错,这是因为libssl.so.1.1文件找不到,执行find / -name ‘libssl.so.1.1’,将/etc/ld.so.conf里面的lib64改成find出来的路径即可"

[root@localhost ~]# openssl version openssl: error while loading
shared libraries: libssl.so.1.1: cannot open shared object file: No
such file or directory"

5、升级openssh
(1)备份原来的openssh

mv /etc/ssh{,.bak}
mkdir /usr/local/openssh

(2)编译安装新的openssh

tar -zxvf openssh-9.1p1.tar.gz
cd openssh-9.1p1/
./configure --prefix=/usr/local/openssh \--sysconfdir=/etc/ssh \--with-openssl-includes=/usr/local/include \--with-ssl-dir=/usr/local/lib64 \--with-zlib \--with-md5-passwords \--with-pam && \make && \make install

(3)配置sshd_config

echo "UseDNS no" >> /etc/ssh/sshd_config
echo 'PermitRootLogin yes' >> /etc/ssh/sshd_config
echo 'PubkeyAuthentication yes' >> /etc/ssh/sshd_config
echo 'PasswordAuthentication yes' >> /etc/ssh/sshd_config

(4)创建软连接

mv /usr/sbin/sshd{,.bak}
mv /usr/bin/ssh{,.bak}
mv /usr/bin/ssh-keygen{,.bak}
ln -s /usr/local/openssh/bin/ssh /usr/bin/ssh
ln -s /usr/local/openssh/bin/ssh-keygen /usr/bin/ssh-keygen
ln -s /usr/local/openssh/sbin/sshd /usr/sbin/sshd

(5)重启sshd服务(#注意:/root/openssh-9.1p1/contrib/redhat/ 这个目录是openssh-9.1p1.tar.gz解压后的目录,根据实际情况修改

systemctl disable sshd --now
mv /usr/lib/systemd/system/sshd.service{,.bak}
systemctl daemon-reload
cp -a /root/openssh-9.1p1/contrib/redhat/sshd.init /etc/init.d/sshd
cp -a /root/openssh-9.1p1/contrib/redhat/sshd.pam /etc/pam.d/sshd.pam
chkconfig --add sshd
systemctl enable sshd --now
systemctl restart sshd

(6)查看ssh版本

ssh -V

(7)使用ssh客户端测试连接,连接成功,即表示升级完成,此时可以关闭telnet服务

systemctl disable xinetd.service --now
systemctl disable telnet.socket --now
systemctl stop xinetd.service --now
systemctl stop telnet.socket --now

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

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

相关文章

目前电视盒子哪个最好?测评20款后整理网络电视盒子推荐

电视盒子是日常必备的数码单品,功能越来越丰富,但很多人不懂要如何选择电视盒子,芯片、内存外还应该考虑系统、技术优化和界面设计等因素。昨天刚刚结束了二十款电视盒子的测评,马上来介绍下我的测评结果,整理了网络电…

flutter mqtt的使用看这里,持续更新

mqtt网络协议,相信跟物联网相关的公司都会遇到,在Android,iOS原生开发是可以很好的实现,相关的资料也是很多!但是在flutter里面还算比较尝鲜的一个领域吧! 幸亏flutter里面 已经有一个还不错的第三库mqtt_client&…

Springcloud 之Gateway组件详解

目录 1.网关 1.1 网关简介 1.2 网关组件 1.2.1 Gateway介绍 1.2.2 Gateway实践 1.2.3 Gateway执行流程 1.2.4 断言工厂 1.2.5 过滤器 1.网关 1.1 网关简介 大家都都知道在微服务架构中,一个系统会被拆分为很多个微服务。那么作为客户端要如何去调用这么多…

Vmware ESXi 5.0 安装与部署

在虚拟化领域VMware、Citrix、Microsoft都有不错的解决方案而在服务器虚拟化领域VMware又占据着领导者地位游侠www.2cto.com今天也装了个平台与大家一起分享。   VMware的虚拟化产品就个人、小企业而言有Workstation、ESXivSphere免费版、VMwareServer免费版可以选择由于Work…

彩蛋丨利用R语言脚本实现批量合并Excel表格,再也不用手动点来点去了!

利用R语言脚本实现批量合并Excel表格 在整理数据的时候遇到一个问题:假如有很多个excel表,分别存放了一部分数据,现在想要快速把这些表格的数据汇总到一起,如何用R语言快速完成呢?本文分享一个脚本,能够自动…

分享2个教学视频录制的方法!

案例:如何录制教学视频? 【我是一名老师,我想录制一些教学视频发布在网络平台上,但是我不知道如何操作。有没有人知道录制教学视频需要什么工具?如何录制?】 随着在线教育的普及,越来越多的教…

【K8s】K8s介绍与集群环境搭建

文章目录 一、Kubernetes介绍1、背景2、kubernetes简介3、组件说明4、示例:部署nginx说明各组件的协作5、kubernetes核心概念 二、kubernetes集群环境搭建1、部署方式2、安装要求和最终目标3、环境准备4、环境初始化5、集群测试 一、Kubernetes介绍 1、背景 在部署…

转向路线优化之算法二

0.概述 广义上的主曲线定义为穿过数据中心的自洽曲线,本文基于数据点的概率密度估计结果,得到相应的梯度Gradient和Hessian矩阵,以此求得原始数据点的主曲线拟合结果. 1.基于Gradient与Hessian的主曲线定义 一般认为可构造主曲面(含主曲线)的数据点具有某种固有的潜在概…

Java多线程入门到精通学习大全?了解线程的几种创建方式和基本原理、代码示例!(第四篇:线程的创建学习)

Java多线程的创建方式有三种:继承Thread类,实现Runnable接口和使用Callable和Future接口。 一、继承Thread类 1 原理: 继承Thread类,重写run()方法,将需要并发执行的代码写在run()方法中,创建Thread类的…

【python学习】基础篇-文件与系统-打开与读取文件、文件操作的常用方法

打开与读取文件 在 Python 中,内置了文件(file) 对象。 在使用文件对象时,首先需要通过内置的 open0 方法创建一个文件对象,然后通过该对象提供的方法进行基本的文件操作。 open() 函数的语法格式如下: file open(filename[,mode[,bufferin…

推荐系统学习之路

基本概念: 一、基本流程 b站王树森老师课程笔记 召回(retrieval):快速从海量数据中取回几千个用户可能感兴趣的物品。 方法: 协同过滤 相似度计算: 余弦, 杰卡德 矩阵分解: 将一个稀疏的用户评…

2022年宜昌市网络搭建与应用竞赛样题(三)

网络搭建与应用竞赛样题(三) 技能要求 (总分1000分) 竞赛说明 一、竞赛内容分布 “网络搭建与应用”竞赛共分三个部分,其中: 第一部分:网络搭建及安全部署项目(500分&#xff0…

Docker笔记(二)

一、Docker 复杂安装1.1、mysql 主从复制1.2、Redis1.2.1、Redis存储大量数据解决方案1.2.2、Redis 集群搭建1.2.3、数据读写存储1.2.4、容错切换转移1.2.5、主从扩容案例1.2.6、主从缩容案例 二、Dockerfile2.1、是什么?2.2、保留字指令2.3、案例 三、虚悬镜像3.1、…

Jetson Orin 平台MAX9296+森云SG5-IMX490C-GMSL2 RGGB(无ISP)驱动调试

1.前期调试说明 开发套件: AGX Orin 32GB模块 版本: JetPack 5.0.2 使用1台SG5-IMX490C-GMSL2-Hxxx IMX490 RGGB x4相机(无ISP), 通过max9296 GMSL2 LINKA接入到Orin CSI端口4 v4l2-ctl -d /dev/video0 --set-ctrl bypass_mode=0 --stream-mmap --stream-count=5 [ 1282…

Django框架之视图概述和URL配置

概述 视图方法,简称视图,它可以接收一个Web request对象并向客户端返回一个Web response对象。response可以是任何对象,如HTML文档、重定向、404异常、XML文档甚至一张图片。在视图方法中可以进行任意的业务逻辑处理,例如查询数据…

运算符重载(全局函数与类的成员函数分别解析)

运算符重载(全局函数) 比如说对于小于号和大于号,如果说是内置类型的话,可以直接进行比较,因为内置类型是祖师爷定义的,那祖师爷肯定知道比方说int类型怎么比,double类型怎么比,因为…

STL之search()算法

我们之前介绍的find()算法以及find_if()算法都帮助我们查找判断某一个value是否被包含在序列中,并返回它第一次出现时所处的位置,假如我想找到某一段满足条件的子区间,应该怎么做呢?C标准库又为我们提供了哪些算法呢? …

2023年4月《中国数据库行业分析报告》正式发布(含精彩内容概览)

为了帮助大家及时了解中国数据库行业发展现状、梳理当前数据库市场环境和产品生态等情况,从2022年4月起,墨天轮社区行业分析研究团队出品将持续每月为大家推出最新《中国数据库行业分析报告》,持续传播数据技术知识、努力促进技术创新与行业生…

C语言课设项目-51单片机-红外通信

(创作不易,感谢有你,你的支持,就是我前行的最大动力,如果看完对你有帮助,请留下您的足迹) 目录 一. 什么是红外线 二. 红外线系统的组成 三. 红外发射管 四. 红外遥控器发射 五. 红外线接收 六.数…

还能这么玩?清华给 ChatGPT 做逆向,发现了 ChatGPT 的进化轨迹!

作者 |小戏、Python 立足一个 ChatGPT,现在对大模型的研究简直是百花齐发百家争鸣,用 ChatGPT 做化学实验、给 ChatGPT 做心理测试、诱导 ChatGPT 越狱泄漏隐私、让几个 ChatGPT 形成一个小社会等等不胜枚举。 而最近,清华的研究团队又在大模…