Linux - centos6.6升级openssh9.7p1
一、注意事项
1、任何会被修改的配置文件都要提前备份
2、每一步操作都要记录
3、提前预演,知道可能遇到的问题,以及对应的解决方法,能够在生产环境上升级时,更快完成操作。
4、一开始用来操作的ssh会话窗口一定不要关。(如果有超时断开连接的,速度一定要快一些,不然只能去机房了。)
5、本文所需的工具包都免费放在博客最后了。(分文不取,点个关注就行)
二、背景
操作系统是Centos6.6,漏洞扫描出一大堆……

根本原因是openssh版本过低,有漏洞,需要升级。漏洞报告很多都说需要升级openssh
当前服务器的操作系统,以及openssh的版本信息如下

三、开始升级
上传Openssh9.7p1的tar.gz包之后解压,并执行以下命令

3.1、安装openssl的前提(gcc、zlib-devel、openssh-devel)
这时会发现,没有安装gcc编译器。后续再次执行configure还会报错,整理如下待安装内容
执行 yum -y install gcc zlib-devel openssh-devel
在执行操作之前,上传了centos6.6的iso文件制作了yum源,所以gcc zlib-devel openssh-devel安装的都是el6的包
3.2、安装Perl
之后需要安装perl,这是安装openssl的前提

之后进行安装:make install,如下所示无报错则为安装成功。

配置perl的环境变量

查看一下perl的版本

3.3、安装zlib
接下来是编译安装zlib

编译

安装

配置zlib的环境变量

检查是否有以下三个目录,如果有,则进行openssl的安装

3.4、安装openssl
然后安装openssl,这是安装openssh的前提

然后,进行编译(make)和安装(make install)


配置openssl的环境变量

刷新缓存,查看openssl版本

3.5、安装openssh
然后进行openssh-9.7p1的配置(configure)
./configure --prefix=/usr/local/openssh --sysconfdir=/etc/ssh --with-ssl-dir=/usr/local/openssl --with-zlib=/usr/local/zlib

进行安装(make,见图一)和编译(make install,见图二)


配置openssh的环境变量

查看版本信息

3.6、注册sshd服务
之后遇到一个问题,就是执行 service sshd status会显示,sshd是一个未知的服务
查看/etc/init.d下也没有sshd的启动脚本,于是进行如下配置

其中一篇博客说,Openssh9.x为了安全,默认不允许root用户访问,可以切换个普通用户连一下,如果需要配置root也能ssh访问,请看后续

继续昨天未完成的操作......
创建了普通用户,但还是连不上

3.7、sshd服务器起不来
后来发现,sshd服务起不来了

小问题...等我5分钟
ok,针对 /etc/init.d/sshd: line 41: /usr/bin/ssh-keygen: No such file or directory做了如下操作
ln -snf /usr/local/openssh/bin/ssh-keygen /usr/bin/ssh-keygen
# ssh-keygen需要依赖openssl的libcrypto
ln -snf /usr/local/openssl/lib64/libcrypto.so.3 /usr/lib64/libcrypto.so.3
总之就是,通过源代码编译安装了OpenSSH 9.7p1版本后,通常不会自动创建系统服务文件和相关链接,也不会集成到系统的包管理系统中
针对,/etc/init.d/sshd: line 49: /usr/sbin/sshd: No such file or directory 做了如下操作
ln -snf /usr/local/openssh/sbin/sshd /usr/sbin/sshd

之后再通过ssh客户端工具进行连接,现已连接成功

四、完结撒花
之后,就等待下一次的漏扫。(*^▽^*)
经过测试,root用户和普通用户都可以进行ssh访问
OS:打败我的只会让我更强大!!
参考资料
Centos 6.6 升级openSSH 远程访问版本(5.3升级7.0源码安装版)
链接地址:https://blog.51cto.com/jdonghong/1952414
(胎教级)Centos7.x完全断网升级OpenSSL3.x、OpenSSH9.x以及任意版本
链接地址:https://blog.csdn.net/m0_37822085/article/details/136740931
相关工具包
1、centos6.6的iso文件,用于安装telnet、ftp等以及后续升级失败,也可以从iso中安装原来的ssh相关的包
链接:https://pan.baidu.com/s/1-9tX9l1M6piFWWQBryMUCA?pwd=avat
提取码:avat
2、openssh9.7p1的tar.gz文件
3、openssl的tar.gz文件
4、Perl
5、Zlib
2、3、4、5统一打包放在下面的网盘链接
链接:https://pan.baidu.com/s/1fDMPN3MWkzYid4iQAhCl-A?pwd=pl2o
提取码:pl2o
— 要养成终生学习的习惯 —
Linux - centos6.6升级openssh9.7p1的更多相关文章
- linux centos6.3 升级svn1.6到svn1.8
linux centos6.3 升级svn1.6 1. 删除svn1.6 #yum remover subverson12.设置svn1.8安装源 vim /etc/yum.repos.d/wandi ...
- Linux Centos6.5 升级默认Python2.6.6到Python2.7.13
以下例子基于python 2.7.9,其他版本同理.大致的命令都是差不多的,安装完成之后,输入Python --vertion ,看到系统默认的版本已经替换为2.7版本了 1.下载python wge ...
- [Linux] centos6.5升级安装的supervisor
因为我要用它来管理多个PHP进程去执行任务,在默认版本下的配置多个子进程不起作用 默认版本的supervisor版本比较低2.1.9,对于运行多个子进程貌似有问题,最新版的supervisor4.1的 ...
- Centos6.5升级安装openssh7.7p1
Centos6.5升级安装openssh7.7p1 关于OpenSSH漏洞 2016年1月14日OpenSSH发布官方公告称, OpenSSH Client 5.4~7.1 版本中未公开说明的功 ...
- 大数据项目之_15_帮助文档_NTP 配置时间服务器+Linux 集群服务群起脚本+CentOS6.8 升级到 python 到 2.7
一.NTP 配置时间服务器1.1.检查当前系统时区1.2.同步时间1.3.检查软件包1.4.修改 ntp 配置文件1.5.重启 ntp 服务1.6.设置定时同步任务二.Linux 集群服务群起脚本2. ...
- centos6.5升级Linux内核步骤
centos6.5升级Linux内核步骤 http://www.jianshu.com/p/c75f00182b4c 使用的操作系统是是centos6.5,按照官方的推荐的配置,把linux内核升级到 ...
- CentOS6.5升级为CentOS7.0
CentOS6.5升级为CentOS7.0 CentOS6.5升级为CentOS7 升级前: [root@localhost ~]# cat /proc/version Linux version ...
- CentOS6.x升级MySQL版本5.1到5.6
CentOS6.x升级MySQL版本5.1到5.6 分类: Web MySQL 2014-08-04 11:22 2813人阅读 评论(1) 收藏 举报 mysql云服务器升级centos6 有一些虚 ...
- CentOS6.5升级手动安装GCC4.8.2 与 CentOS 6.4 编译安装 gcc 4.8.1
http://blog.163.com/zhu329599788@126/blog/static/6669335020161179259975 http://www.cnblogs.com/codem ...
- Centos 6.x Openssh 升级 7.7p1 版本
OpenSSH 升级 目前在一家金融公司上班,正好赶上金融公司各种暴雷,本人心里慌慌的. 然后就是金融公司要进行的最低的三级等保评测,各种修改系统安全,密码强度.WAF.防火墙等各种. 评测公司对我司 ...
随机推荐
- 解密prompt系列44. RAG探索模式?深度思考模式?
前一阵多步RAG的风吹入了工业界,kimi推出了探索版本,各应用都推出了深度搜索,You.COM更是早就有了Genius的多步模式.其实都是类似multi-hop RAG的实现.之前学术界在讨论mul ...
- Centos使用图形化界面配置网络
1. 查看当前ip地址 # ip addr 2. 图形化界面配置网卡 # nmtui 界面提示,左右上下配置,OK即可.
- Flutter 引用包命名冲突,重复引用
Flutter 引用包命名冲突,重复引用 报错信息 lib/page.dart:92:11: Error: 'Response' is imported from both 'package:get/ ...
- k3d 入门:在 Docker 中运行 k3s
k3d 入门:在 Docker 中运行 k3s https://www.xtplayer.cn/k3d/introduction-k3d-run-k3s-docker-src/#The-"S ...
- 2024年1月Java项目开发指南18:自定义异常输出
一般情况下,报错信息一大堆,值得注意的只有三个地方: 哪个文件发生了错误 哪一行发生了错误 错误原因是什么 只要知道这三个东西就能快速的定位到错误发生的位置并且根据提示解决. 如果你也喜欢我的这种异常 ...
- 【Java】【SpringBoot】CP03:热部署
This article is written by Xrilang(Chinese Name:萌狼蓝天) If you want find me ,You can contact me in Bil ...
- Debian 9.5 解决中文显示乱码
一.首先检查LOCALE情况 说明:DEBIAN因为基于GNU所以,对不同地域进行了不同的包支持,以LOCALE形式存在. 1.启动终端 #apt-get install locales 2.重新配置 ...
- 如何在cmake中添加lib库
如何在cmake中添加lib库: 生成lib文件 libhello.a add_library(hello hello.cxx) # 在top level添加子目录 add_subdirectory( ...
- .NET 9 new features-Memory Caching 和 Collections 优化
一.内存缓存(Memory Caching) 1. 具体的原理 内存缓存是一种在应用程序内存中存储数据的机制,旨在减少对外部数据源的频繁访问,从而提高应用程序的性能. 在 .NET 中,MemoryC ...
- 不为人知的网络编程(十九):能Ping通,TCP就一定能连接和通信吗?
本文由小白debug分享,原题"能 ping 通,TCP 就一定能连通吗?",下文进行了排版和内容优化. 1.引言 平时,我们想要知道,自己的机器到目的机器之间,网络通不通,一般会 ...