Centos6.7下平滑升级SSH

    最近客户给了一个漏洞扫描报告,需要我这协助做一下ssh的漏洞修复,因为是通过堡垒机远程进行的连接,所以,网上说的一些需要卸载ssh,再重新编译的方法不适合我此时的环境,因此,采用重新build rpm包,来进行update ,这里记录一下。

    操作系统:centos6.7     目标ssh版本:7.6

    可以先使用ssh -V (或者rpm -qa |grep openssh)查看升级前的ssh版本号,这里因为是我已经做过升级后才进行的记录,就不在截图说明 之前的版本号了,大概好像是5.1。

   升级第一步:

   下载ssh的源码包:wget http://mirrors.evowise.com/pub/OpenBSD/OpenSSH/portable/openssh-7.6p1.tar.gz

cd /home/assoft/
wget http://mirrors.evowise.com/pub/OpenBSD/OpenSSH/portable/openssh-7.6p1.tar.gz
tar -xvzf openssh-7.6p1.tar.gz

    升级第二步:

   安装rpmbuild相关依赖包

yum install rpm-build gcc make wget openssl-devel krb5-devel pam-devel libX11-devel xmkmf libXt-devel

     升级第三步:

    创建对应的build目录

mkdir -p /root/rpmbuild/{SOURCES,SPECS}
cp ./openssh-7.6p1/contrib/redhat/openssh.spec /root/rpmbuild/SPECS/
cp openssh-7.6p1.tar.gz /root/rpmbuild/SOURCES/
cd /root/rpmbuild/SPECS/

     升级第四步:

     替换内容

sed -i -e "s/%define no_gnome_askpass 0/%define no_gnome_askpass 1/g" openssh.spec
sed -i -e "s/%define no_x11_askpass 0/%define no_x11_askpass 1/g" openssh.spec
sed -i -e "s/BuildPreReq/BuildRequires/g" openssh.spec

      升级第五步:

rpmbuild -bb openssh.spec

      升级第六步:

经过rpmbuild 以后会在rpmbuild目录下生成一些目录,这时候进入RPMS目录中

[root@localhost rpmbuild]# cd RPMS/x86_64/
[root@localhost x86_64]# ls
openssh-7.6p1-1.x86_64.rpm          openssh-debuginfo-7.6p1-1.x86_64.rpm
openssh-clients-7.6p1-1.x86_64.rpm  openssh-server-7.6p1-1.x86_64.rpm

       升级第七步:

rpm  -Uvh *.rpm

       此时等待升级完成,通过ssh -V查看版本。



猜你喜欢

转载自blog.csdn.net/woshiji594167/article/details/80625374
今日推荐