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
— 要养成终生学习的习惯 —

浙公网安备 33010602011771号