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.防火墙等各种. 评测公司对我司 ...
随机推荐
- Redis应用—9.简单应用汇总
大纲 1.基于Redis实现的简单缓存机制(String数据结构) 2.实现一个最简单的分布式锁(String数据结构) 3.博客网站的文章发布与查看(String数据结构) 4.博客字数统计与文章预 ...
- IDEA批量实现CRLF转换成LF问题
需要注意idea项目中右下角:选择LF,否则到时候部署到生产环境上会报错'\r\n'问题,之前的解决方案是 dos2unix 然后很多文件报这个问题,索性进行批量转换,但是很快拉去的新项目又会出现同样 ...
- DevNow x Notion
前言 Notion 应该是目前用户量比较大的一个在线笔记软件,它的文档系统也非常完善,支持多种文档格式,如 Markdown.富文本.表格.公式等. 早期我也用过一段时间,后来有点不习惯,就换到了 O ...
- 盘点5个常用的.Net依赖注入框架!
盘点5个常用的依赖注入框架,特别是前面2个. 1.Microsoft.Extensions.DependencyInjection 这是.Net Core框架本身内置集成的,我们只需引入Microso ...
- Qt/C++音视频开发64-共享解码线程/重复利用解码/极低CPU占用/画面同步/进度同步
一.前言 共享解码线程主要是为了降低CPU占用,重复利用解码,毕竟在一个监控系统中,很可能打开了同一个地址,需要在多个不同的窗口中播放,形成多屏渲染的效果,做到真正的完全的画面同步,在主解码线程中切换 ...
- Qt/C++编写视频监控系统82-自定义音柱显示
一.前言 通过音柱控件实时展示当前播放的声音产生的振幅的大小,得益于音频播放组件内置了音频振幅的计算,可以动态开启和关闭,开启后会对发送过来的要播放的声音数据,进行运算得到当前这个音频数据的振幅,类似 ...
- 基于开源IM即时通讯框架MobileIMSDK:RainbowChat v11.7版已发布
关于RainbowChat RainbowChat是一套基于开源IM聊天框架 MobileIMSDK 的产品级移动端IM系统.RainbowChat源于真实运营的产品,解决了大量的屏幕适配.细节优化. ...
- Docker Desktop 使用笔记
一.Docker Desktop是什么? Docker Desktop是适用于Windows的Docker桌面,是Docker设计用于在Windows 10上运行.它是一个本地 Windows 应用程 ...
- 使用Docker部署的基于binlog实现Mysql8
概念 MySQL 基于 Binlog 的主从复制(Master-Slave Replication)是 MySQL 数据库中实现数据复制的一种机制.在这种复制模式下,主库(Master)记录所有对数据 ...
- Java AQS学习笔记
1. AQS介绍 AQS的全称为(AbstractQueuedSynchronizer),这个类在java.util.concurrent.locks包下面. AQS是一个用来构建锁和同步器的框架,使 ...