说明:此方式针对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
开源打包源码git拉下来以后为这个
1.4 将我们下载的ssh ssl源码包移动到downloads目录下
mv openssh-9.6p1.tar.gz openssh-rpms/downloads/
mv openssl-1.1.1w.tar.gz 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
# 第一处
source version.env
改为
source ./version.env
# 第二处
wget OPENSSLSRC
wget OPENSSHSRC
wget ASKPASSSRC
改为
wget --no-check-certificate $OPENSSLMIR/$OPENSSLSRC
wget --no-check-certificate $OPENSSHMIR/$OPENSSHSRC
wget --no-check-certificate $ASKPASSMIR/$ASKPASSSRC
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就变成了392行)
%attr(0755,root,root) %{_bindir}/ssh-copy-id
![](https://img-blog.csdnimg.cn/direct/e2ce4b10114e40708cca5054bc2eb47e.png)![](https://img-blog.csdnimg.cn/direct/42193b11622b4e0b9ca9d9919d2e57bd.png)
3.4 修改版本openssl的版本 version.env
这里我们修改成我们对应的版本,即我们上面提到的downloads目录下所存放的文件
4.编译打包
进入到openssh-rpms目录下执行打包脚本
./compile.sh el7
打包过程比较慢,请耐心等待 本人打包大概用了10-15分钟
打完rpm包的目录为
最后我们把他们打成压缩包,以便使用
tar -cvf centos7_x86_64_openssh9.6p1.tar x86_64/
本文参考
CentOS 5/6/7 基于开源项目制作openssh 9.6p1 rpm包—— 筑梦之路_centos6 openssh9.6rpm-CSDN博客
版权归原作者 仔仔程 所有, 如有侵权,请联系我们删除。