淮北网站建设公司,赚钱,多渠道分销系统,网站接入支付宝需要网站备案吗2023年12月18日 openssh 发布新版9.6p1#xff0c;详细内容阅读OpenSSH: Release Notes
背景说明
之前也写过多篇制作openssh rpm包的文章#xff0c;为何要重新来写一篇制作openssh 9.6版本的#xff1f;
openssh 9.6 rpm包制作和之前存在区别#xff0c;对于CentOS 7来…2023年12月18日 openssh 发布新版9.6p1详细内容阅读OpenSSH: Release Notes
背景说明
之前也写过多篇制作openssh rpm包的文章为何要重新来写一篇制作openssh 9.6版本的
openssh 9.6 rpm包制作和之前存在区别对于CentOS 7来说制作步骤上有一些变化更何况CentOS 7 在2024年6月将结束生命周期官方将不再维护支持因此在这里单独来写一篇记录一下。
有哪些变化呢
1. 强制要求openssl 1.1.1以上版本
2. 强制要求安装openssl-devel 1.1.1以上版本
这两点也足以说明逐渐失去对CentOS 7 及以下版本的维护支持。
制作步骤
1. 做好准备工作
centos 7 制作openssh8.7/8.8/8.9/9.0/9.1/9.2/9.3 p1 rpm包升级——筑梦之路_error: package: openssh-9.5p1-1.el7.x86_64 (/opens-CSDN博客
阅读这篇了解整个制作安装流程
CentOS 7 制作openssl 1.1.1w 版本rpm包 —— 筑梦之路-CSDN博客
阅读这篇制作openssl 1.1.1w rpm包 和 openssl-devel rpm包
CentOS7自制openssh rpm包含ssh-copy-id命令—— 筑梦之路_centos7 openssh rpm-CSDN博客
阅读这篇根据需要添加ssh-copy-id命令
2. openssh.spec文件重点地方说明
%if ! %{without_openssl}
BuildRequires: openssl-devel 1.1.1
%endif这段代码中的 %{without_openssl} 是一个宏macro用于表示是否禁用了 OpenSSL。这个宏的值可以通过在构建RPM包时传递相应的参数进行设置。如果 %{without_openssl} 的值为真即 OpenSSL 被禁用则不会执行代码块中的内容。否则如果 %{without_openssl} 的值为假即 OpenSSL 未被禁用则会执行代码块中的内容。在这个例子中如果 without_openssl 为假即 OpenSSL 未被禁用则会添加一个构建要求BuildRequires要求安装的 OpenSSL 版本大于等于 1.1.1。这意味着在构建包时必须安装这个指定版本的 OpenSSL 开发库openssl-devel。这段代码的目的是确保在构建RPM包时当 OpenSSL 未被禁用时正确指定对 OpenSSL 开发库的依赖。请注意该代码段中的 %{without_openssl} 变量是根据构建环境和参数的不同而变化的因此需要根据具体的上下文和构建过程设置该变量的值。9.6版本openssh.spec文件中该段代码摘自9.5版本如下%if %{compat_openssl}
BuildRequires: compat-openssl10-devel
%else
BuildRequires: openssl-devel 1.0.1
#BuildRequires: openssl-devel 1.1
%endif3. openssl的安装
# 安装opensslrpm -ivh openssl-1.1.1w-1.el7.x86_64.rpm --nodeps --force# 安装openssl-develrpm -ivh openssl-devel-1.1.1w-1.el7.x86_64.rpm --nodeps --force
4. openssh 9.6p1版本rpm制作
rpmbuild -ba openssh.spec
安装测试验证
再次提醒未经验证不要上生产环境 有需要已经制作好的rpm包请查看我的资源。
对于操作系统默认安装了openssl 1.1.1及其以上版本的来说并不存在该问题。
2023年12月21日