记录日常工作关于系统运维,虚拟化云计算,数据库,网络安全等各方面问题。

Openeuler2203编译安装openssh9.7p1,RPM打包,解决漏洞问题


1,使用rpmbuild将tar包打成rpm包,不喜欢编译升级的,使用RPM升级就方便多了。

    想使用openssh的源码包编译安装的,参考这里:

OpenSSH-9.7p1 (linuxfromscratch.org)



2,准备编译环境

    [root@centos7-31 ~]#  yum install rpm-build zlib-devel openssl-devel gcc perl-devel pam-devel  libXt-devel gtk2-devel make perl -y

    [root@centos7-31 ~]#  dnf install imake -y 

    [root@centos7-31 ~]#  mkdir -p /root/rpmbuild/

    [root@centos7-31 ~]#   cd /root/rpmbuild

    [root@centos7-31 ~]#    mkdir BUILD BUILDROOT RPMS SOURCES SPECS SRPMS

3,下载软件包

    [root@centos7-31 ~]#  cd SOURCES/

    [root@centos7-31 ~]#  wget  https://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.7p1.tar.gz

    [root@centos7-31 ~]#   wget https://mirrors.slackware.com/slackware/slackware-14.2/source/xap/x11-ssh-askpass/x11-ssh-askpass-1.2.4.1.tar.gz



   4,解压软件包,修改相关配置文件,再重新打包

    [root@centos7-31 ~]#  tar zxvf openssh-9.7p1.tar.gz

    [root@centos7-31 ~]#   cd openssh-9.7p1/

    [root@centos7-31 ~]#   cp /etc/pam.d/sshd contrib/redhat/sshd.pam

    注意这里还需要修改/root/rpmbuild/SOURCES/openssh-9.6p1/sshd_config文件内容,这样升级后就不修改系统的sshd_config的配置内容。

    根据自己情况修改。

    [root@centos7-31 ~]#   cd /root/rpmbuild/SOURCES/

    [root@centos7-31 ~]#    tar -zcpf openssh-9.7p1.tar.gz openssh-9.7p1



   5,修改打包配置文件。

   

    #将openssh.spec配置文件拷贝到,编译目录下

     cp  /root/rpmbuild/SOURCES/openssh-9.7p1/contrib/redhat/openssh.spec  /root/rpmbuild/SPECS/ 

     cd /root/rpmbuild/SPECS

     

   # 解决PreReq报错

   cat /root/rpmbuild/SPECS/openssh.spec | grep PreReq

   sed -i '/PreReq/s/^/#/' openssh.spec


   以下是源码包修改了相关配置文件,包含打包配置文件,可以直接用来打包,使用此文件可解决没有ssh-copy-id命令的问题

      

openssh-9.7p1.tar.gz


    


   6,打包软件

    [root@centos7-31 ~]#   rpmbuild -ba openssh.spec 

    

   7,删除旧版软件,并安装openssh9.7p1

    [root@centos7-31 ~]#   cd /root/rpmbuild/RPMS/x86_64/

[root@centos7-31 ~]#    rpm -Uvh openssh-*.rpm

或是使用以下命令删除旧软件包,再安装。

    [root@centos7-31 ~]#     rpm -e $(rpm -qa |grep openssh) --nodeps

    [root@centos7-31 ~]#   rpm -ivh openssh-*.rpm

    

   8,检查配置文件内容是否有误,启用sshd服务

    [root@centos7-31 ~]#    sshd -t

    [root@centos7-31 ~]#     systemctl disable sshd

    [root@centos7-31 ~]#     systemctl enable sshd

    [root@centos7-31 ~]#    systemctl restart sshd


   以下是openssh9.7p1的rpm包下载地址


openssh9.7p1.zip




转载请标明出处【Openeuler2203编译安装openssh9.7p1,RPM打包,解决漏洞问题】。

《www.micoder.cc》 虚拟化云计算,系统运维,安全技术服务.

网站已经关闭评论