CentOS7下快速升级至OpenSSH9.3p2安全版本

之前的文章可供参考:CentOS7下快速升级OpenSSH至8.9p1安全版本

一、CentOS7服务器上编译生成OpenSSH9.3p2的RPM包

1、编译打包的shell脚本来源于该项目

https://github.com/boypt/openssh-rpms

(图片点击放大查看)

unzip openssh-rpms-main.zip -d /opt
cd /opt/
cd openssh-rpms-main/

(图片点击放大查看)            

#OPENSSLSRC=openssl-1.0.2.tar.gz  //            注意选择openssl版本或者使用默认的版本
OPENSSLSRC=openssl-1.0.2k.tar.gz  这个版本太低会报错

 

OPENSSLSRC=openssl-1.1.1k.tar.gz 最低这个版本否则报错

vim pullsrc.sh 
修改第23行为source ./version.env 

wget $OPENSSLMIR/$OPENSSLSRC 

wget $OPENSSHMIR/$OPENSSHSRC

wget $ASKPASSMIR/$ASKPASSSRC
这三行改为

wget --no-check-certificate $OPENSSLMIR/$OPENSSLSRC 

wget --no-check-certificate $OPENSSHMIR/$OPENSSHSRC

wget --no-check-certificate $ASKPASSMIR/$ASKPASSSRC

2、sh pullsrc.sh下载源码包

sh pullsrc.sh

(图片点击放大查看)

 

 

openssh源码中是没有ssh-copy-id相关参数的,如果直接编译安装,会发现安装后没有ssh-copy-id命令,因此如果需要用到该命令,需要修改编译参数控制文件openssh.spec (大概在305行的位置)

# vim el7/SPECS/openssh.spec +305   # 插入以下内容
install -m755 contrib/ssh-copy-id $RPM_BUILD_ROOT/usr/bin/ssh-copy-id

在388行的位置再继续插入以下内容,保存退出

%attr(0755,root,root) %{_bindir}/ssh-copy-id

修改openssl版本否会编译失败

3、准备编译所需环境

cat README.md
yum groupinstall -y "Development Tools"
yum install -y imake rpm-build pam-devel krb5-devel zlib-devel libXt-devel libX11-devel gtk2-devel  perl-IPC-Cmd

(图片点击放大查看)

执行编译打包脚本

./compile.sh 

(图片点击放大查看)

最后会生成rpm包位于

/opt/openssh-rpms-main/el7/RPMS/x86_64/

将生成的rpm包打包

tar -zcvf openssh9.3p2_el7_rpms.tar.gz *.rpm

二、使有rpm包CentOS7服务器上升级OpenSSH

在需要升级OpenSSH版本的CentOS7服务器上升级OpenSSH 具体升级操作命令如下

tar -zxvf openssh9.3p2_el7_rpms.tar.gz -C /home
cd /home
rpm -Uvh *.rpm 
rm -rf /etc/ssh/ssh_host_*
systemctl restart sshd

(图片点击放大查看)

ssh -V
sshd -V
rpm -aq | grep openssh

(图片点击放大查看)

即可验证当前OpenSSH的版本 可以看到openssh的版本为OpenSSH_9.3p2 使用的是OpenSSL 1.1.1u

本文使用到的openssh9.3p2_el7_rpms.tar.gz和openssh-rpms-main.zip文件

 https://github.com/cheyunhua/openssh-rpms

 https://www.cnblogs.com/cyleon/p/17729502.html

 

https://cloud.tencent.com/developer/article/2324196

posted @ 2023-12-26 21:30  技术颜良  阅读(692)  评论(0编辑  收藏  举报