CentOS7 OpenSSH9.6p打RPM包

CentOS7 OpenSSH9.6p打RPM包

说明:此方式针对9.7版本也可以用 其他版本应该也可以(我没试过其他版本,只试的9.6和9.7版本),如若需要可以自行尝试

1.下载所需要的源码文件

SSH SSL源码文件也可以通过官网自行下载然后在进行上传到服务器上

1.1 ssh源码

wget --no-check-certificate https://mirrors.aliyun.com/pub/OpenBSD/OpenSSH/portable/openssh-9.6p1.tar.gz

1.2 ssl源码

wget --no-check-certificate https://www.openssl.org/source/openssl-1.1.1w.tar.gz

1.3 开源打包源码

git clone https://github.com/boypt/openssh-rpms.git
[root@localhost ~]# ll
total 11484
-rw-r--r--.  1 root root 1857862 Dec 18 23:06 openssh-9.6p1.tar.gz
drwxr-xr-x. 11 root root    4096 May 23 23:19 openssh-rpms
-rw-r--r--.  1 root root 9893384 Dec  4 22:39 openssl-1.1.1w.tar.gz

1.4 将我们下载的ssh ssl源码包移动到downloads目录下

mv openssh-9.6p1.tar.gz openssh-rpms/downloads/

mv openssl-1.1.1w.tar.gz openssh-rpms/downloads/
[root@localhost openssh-rpms]# cd downloads/
[root@localhost downloads]# ll
total 11512
-rw-r--r--. 1 root root 1857862 Dec 18 23:06 openssh-9.6p1.tar.gz
-rw-r--r--. 1 root root 9893384 Dec  4 22:39 openssl-1.1.1w.tar.gz
-rw-r--r--. 1 root root   29229 May 23 23:19 x11-ssh-askpass-1.2.4.1.tar.gz
[root@localhost downloads]# pwd
/root/openssh-rpms/downloads

2.准备编译打包环境

yum groupinstall -y "Development Tools"

yum install -y imake rpm-build pam-devel krb5-devel zlib-devel libXt-devel libX11-devel gtk2-devel

3.修改开源脚本

3.1 修改脚本pullsrc.sh

修改脚本pullsrc.sh

source version.env
# 修改为
source ./version.env

3.2 修改脚本compile.sh

修改脚本compile.sh

source version.env
# 改为
source ./version.env

3.3 修改 openssh.spec 添加ssh-copy-id命令

添加ssh-copy-id命令

cd el7/SPECS
 
vim  openssh.spec
 
307 行后添加
 
install -m755 contrib/ssh-copy-id $RPM_BUILD_ROOT/usr/bin/ssh-copy-id
 
390行后添加(注意307行添加后390就变成了391行)
 
%attr(0755,root,root) %{_bindir}/ssh-copy-id

3.4 修改版本openssl的版本 version.env

这里我们修改成我们对应的版本,即我们上面提到的downloads目录下所存放的文件

OPENSSLSRC=openssl-1.1.1w.tar.gz
OPENSSHSRC=openssh-9.6p1.tar.gz
ASKPASSSRC=x11-ssh-askpass-1.2.4.1.tar.gz

4.编译打包

进入到openssh-rpms目录下执行打包脚本

./compile.sh el7

打包过程比较慢,请耐心等待 本人打包大概用了10-15分钟
打完rpm包的目录为

[root@localhost x86_64]# ll
total 15476
-rw-r--r--. 1 root root 5151320 May 23 23:48 openssh-9.6p1-1.el7.x86_64.rpm
-rw-r--r--. 1 root root 5200900 May 23 23:49 openssh-clients-9.6p1-1.el7.x86_64.rpm
-rw-r--r--. 1 root root 3956796 May 23 23:49 openssh-debuginfo-9.6p1-1.el7.x86_64.rpm
-rw-r--r--. 1 root root 1531000 May 23 23:49 openssh-server-9.6p1-1.el7.x86_64.rpm
[root@localhost x86_64]# pwd
/root/openssh-rpms/el7/RPMS/x86_64

最后我们把他们打成压缩包,以便使用

tar -cvf centos7_x86_64_openssh9.6p1.tar x86_64/

OpenSSH升级

1、查询当前的openssh安装版本

rpm -qa | grep openssh

2、查看当前的ssh版本

ssh -V

3、卸载当前的openssh服务

rpm -qa | grep openssh | xargs rpm -e --nodeps

4、解压9.7的安装包

tar -zxvf centos7_x86_64_openssh9.6p1.tar

5、安装9.7的openssh服务

rpm -Uvh openssh-*.rpm

6、再查询更新后的openssh安装版本

rpm -qa | grep openssh

7、查询更新后ssh版本

ssh -V

8、重启sshd服务

systemctl restart sshd

傻瓜式更新,不用单独更新OpenSSL版本后再升级

注意:建议虚拟机测试一下

  • 12
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值