RockyLinux8.7 制作OpenSSH9.2 rpm包
由于系统原装的openssh存在高危的漏洞,安全扫描不过,故制作出最新版本的rpm包修复openssh高危漏洞。
1.安装基础环境工具
dnf install wget make gcc perl rpm-build gtk2-devel krb5-devel libXt-devel openssl-devel pam-devel -y
wget http://www.rpmfind.net/linux/centos/8-stream/PowerTools/x86_64/os/Packages/imake-1.0.7-11.el8.x86_64.rpm
dnf localinstall imake-1.0.7-11.el8.x86_64.rpm -y
2.下载源码包到 /root/rpmbuild/SOURCES/ 目录下
wget https://pkgs.fedoraproject.org/repo/pkgs/openssh/x11-ssh-askpass-1.2.4.1.tar.gz/8f2e41f3f7eaa8543a2440454637f3c3/x11-ssh-askpass-1.2.4.1.tar.gz
wget https://mirrors.aliyun.com/pub/OpenBSD/OpenSSH/portable/openssh-9.2p1.tar.gz
3.解压 openssh 源码包
tar -zxvf openssh-9.2p1.tar.gz
4.拷贝 openssh.spec 文件
mkdir /root/rpmbuild/SOURCES
cp openssh-9.2p1/contrib/redhat/openssh.spec /root/rpmbuild/SOURCES
5.修改 /root/rpmbuild/SOURCES/openssh.spec 文件
注释掉 openssl-devel < 1.1 ##否则会报错
6.制作RPM包
rpmbuild -ba openssh.spec
7.制作完安装包
`[root@localhost ~]# tree rpmbuild/RPMS/x86_64/
rpmbuild/RPMS/x86_64/
├── openssh-9.2p1-1.el8.x86_64.rpm
├── openssh-askpass-9.2p1-1.el8.x86_64.rpm
├── openssh-askpass-debuginfo-9.2p1-1.el8.x86_64.rpm
├── openssh-askpass-gnome-9.2p1-1.el8.x86_64.rpm
├── openssh-askpass-gnome-debuginfo-9.2p1-1.el8.x86_64.rpm
├── openssh-clients-9.2p1-1.el8.x86_64.rpm
├── openssh-clients-debuginfo-9.2p1-1.el8.x86_64.rpm
├── openssh-debuginfo-9.2p1-1.el8.x86_64.rpm
├── openssh-debugsource-9.2p1-1.el8.x86_64.rpm
├── openssh-server-9.2p1-1.el8.x86_64.rpm
└── openssh-server-debuginfo-9.2p1-1.el8.x86_64.rpm
0 directories, 11 files
`
遇到问题:
1.
[root@localhost SPECS]# rpmbuild -ba openssh.spec error: Failed build dependencies: openssl-devel < 1.1 is needed by openssh-9.2p1-1.el8.x86_64
解决方法 注释/root/rpmbuild/SOURCES/openssh.spec 文件 openssl-devel < 1.1
`configure: error: PAM headers not found
error: Bad exit status from /var/tmp/rpm-tmp.ni9gQB (%build)
RPM build errors:
Bad exit status from /var/tmp/rpm-tmp.ni9gQB (%build)
解决方法 安装 pam-devel dnf install pam-devel -y`
安装升级openssh时候需要注意以下几点:
1.提前备份原openssh的配置文件便于有问题时候恢复;
2.注意pam模块的使用,开启pam模块且pam.d 下的sshd配置不正确会导致登录失败;
3.要保证可以登录到带外,防止升级失败系统登录不上;
RockyLinux8.7 制作OpenSSH9.2 rpm包的更多相关文章
- 二十三.Subversion基本操作、使用Subversion协同工作、制作nginx的RPM包
1.Subversion基本操作 web1 1.1 安装Subversion服务器 ]# yum -y install subversion 1.1.1 创建版本库 ]# mkdir /var/svn ...
- 高级运维(七):Subversion基本操作、使用Subversion协同工作、制作nginx的RPM包
一.Subversion基本操作 目标: 本案例要求先快速搭建好一台Subversion服务器,并测试该版本控制软件: 1> 创建版本库 2> 导入初始化数据 3> 检出 ...
- 使用rpm-build制作nginx的rpm包
2014-11-27 11:05:49 一.RPM包的分类 RPM有五种基本的操作功能:安装.卸载.升级.查询和验证. linux软件包分为两大类: (1)二进制类包,包括rpm安装包(一般分为i ...
- 制作FastDFS的RPM包
首先获取fastdfs的源码,因为fastdfs还依赖一个libfastcommon的库,所以也要准备好. fastdfs的源码目录结构: libfastcommon的源码目录结构: 接下来将以Cen ...
- 制作自己的rpm包,并为其制作patch包。
本文分为两个部分,第一部分是制作一个简单的自己的rpm包,并安装运行它.第二部分是为其制作一个patch包,并通过spec配置文件去打补丁,安装.运行打补丁后的程序. 一.安装工具 [yh@local ...
- 制作nginx的rpm包出现问题
在学习打包rpm,找到了个不错的参考站点 https://src.fedoraproject.org/cgit/rpms/ 过程: git clone -b el6 git://pkgs.fedor ...
- nginx-1.8.0 rpm包制作
1.安装rpm-build # yum install rpm-build 2.创建制作RPM包目录 # cat /root/.rpmmacros %_topdir /root/rpmbuild %_ ...
- 制作rpm包步骤
由于项目需要,需要自行制作rpm包.比较全面的可以参考如下链接: http://blog.chinaunix.net/uid-23069658-id-3944462.html 大致框架如下: 1,安装 ...
- rpm包制作(待实验)
作者:firefoxbug 时间:July 18, 2014 rpm包命名规范 对于rpm包的命名符合如下规范. %{NAME}-%{VERSION}-%{RELEASE}.%{ARCH}.rpm N ...
- fpm制作rpm包
一.前言 在企业中我们有事安装软件包.部分都是源码安装,如nginx安装路径都已经固化了,但实际业务中,我们都是把软件包安装到固定目录下,不满足需要,这是其一.其二,编译安装很耗时,比如mysql,特 ...
随机推荐
- Vue+echart 展示后端获取的数据
最近在合作做一个前后端分离项目时,为了测试我写的后端部分获取数据的效果,自己也学了一下 vue 的知识,在获取 json 信息这里也踩了很多坑. 这里列举下我返回的 json 部分信息: { &quo ...
- 动力节点——day01
eclipse的快捷键: 1.ctrl+d删除一行 2.ctrl+1进行纠错 3.alt+/自动补全 4.单行注释ctrl+/ 5.多行注释ctrl+shift+/ 取消ctrl+shift+\ 6. ...
- 关于 Dev-C++ 中缺少 iconv.h 的问题
前言 在 C++ 中有个扩展库 ext,里面有一些黑科技(hash, splay, binomial_heap 等等), 在 Windows 环境中,我们运行 Dev-C++ 并在头文件写 #incl ...
- 半个前端新手入门Electron的过程
前言 先说几句废话,本人是一名 web 后端开发,主语言是 java,在学 Electron 之前,只会一点点 HTML和 JavaScript.本文讲的也是我学习 Electron 的过程,而非教程 ...
- Java 进阶P-8.13+P-8.14
格式化输入输出 Print Writer format("格式",...); printf("格式",...); print(各种基本类型); println( ...
- 【学习笔记】QT从入门到实战完整版(Lambda)(2)
Lambda Lambda 表达式很有意思,相信很多人初次见到 Lambda 表达式都会不能理解有什么用,我也一样,看了视频教程之后,突然意识到,Lambda 真的是太好用了,它可以在某些情况下可以很 ...
- 用GPU来运行Python代码
简介 前几天捣鼓了一下Ubuntu,正是想用一下我旧电脑上的N卡,可以用GPU来跑代码,体验一下多核的快乐. 还好我这破电脑也是支持Cuda的: $ sudo lshw -C display *-di ...
- Python调用Openstack API
本文将介绍如何使用 python 调用 OpenStack API. 什么是RESTful API RESTful API 就是 RESTful 风格的 API.遵循 RESTful 风格开发的API ...
- 关于Visual Studio使用头文件"stdafx.h"报错原因
当我们需要使用"stdafx.h"该头文件时,Visual Studio会报错,提示我们无法打开源文件"stdafx.h",实际上在Visual Studio中 ...
- PostgreSQL 实现快速删除一个用户
一.具体方法 一般情况下直接执行 drop role xxx; 就可以把这个用户删除.但是很多时候会因为用户有依赖而报错. 二.权限依赖 postgres=# create role test wit ...