Openeuler2203编译安装openssh9.7p1,RPM打包,解决漏洞问题
Openeuler2203编译安装openssh9.7p1,RPM打包,解决漏洞问题
1,使用rpmbuild将tar包打成rpm包.
不喜欢编译升级的,使用RPM升级就方便多了。
想使用openssh的源码包编译安装的,参考这里:
OpenSSH-9.7p1 (linuxfromscratch.org
https://www.linuxfromscratch.org/blfs/view/svn/postlfs/openssh.html
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命令的问题
https://www.yjlink.cc/zb_users/upload/2024/06/202406141848194081781.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包下载地址
https://www.yjlink.cc/zb_users/upload/2024/06/202406141844514791633.zip
- 点赞
- 收藏
- 关注作者
评论(0)