CentOS7编译生成openssl和openssh RPM包(centos7制作rpm包)

CentOS7编译生成openssl和openssh RPM包一、编译生成openssl RPM包
二、安装openssl RPM包
三、编译生成openssh RPM包
四、测试机器安装openssl和openssh RPM包 一、

一、编译生成openssl RPM包

2.安装openssl RPM包

3.编译生成openssh RPM包

4. 在测试机上安装openssl 和openssh RPM 包

1.编译生成openssl RPM包

参考:

https://www.kingc.top/archives/centosrhel76-sheng-ji-openssl-he-openssh

1.安装编译环境依赖包。

# yum install -y wget rpm-build zlib-devel openssl-devel gcc perl-devel pam-devel unzip libXt-devel imake gtk2-devel openssl-libscurl 这将创建Perl perl-WWW-Curl

1.

2.下载最新的openssl源码包。

#curl -O –silent https://www.openssl.org/source/openssl-1.1.1t.tar.gz

3.创建openssl.spec文件

概述: Centos 的OpenSSL 1.1.1t

name: openssl

版本:%{?版本}%{!版本:1.1.1t}

发布: 1%{?dist}

已废弃: %{名称}=%{版本}

提供: %{名称}=%{版本}

URL: https://www.openssl.org/

许可证: GPLv2+

来源: https://www.openssl.org/source/%{名称}-%{版本}.tar.gz

BuildRequires: make gcc perl perl-WWW-Curl

BuildRoot: %{_tmppath}/%{名称}-%{版本}-%{发布}-root

# openssldir可以自己更改

%global openssldir /usr/local/openssl

解释

https://github.com/phillyuchkoff/openssl-RPM-Builder

Centos 上的OpenSSL RPM 版本1.1.1t

%packagedevel

摘要: 使用openssl 库的程序的开发文件

Group: 开发/库

需要: %{名称}=%{版本}-%{发布}

%描述开发

Centos 上版本1.1.1t 的OpenSSL RPM(开发包)

准备

%setup-q

建造

./config –prefix=%{openssldir} –openssldir=%{openssldir}

制作

安装

[ \’%{buildroot}\’ !=\’/\’ ] %{__rm} -rf %{buildroot}

%make_install

mkdir -p %{buildroot}%{_bindir}

mkdir -p %{buildroot}%{_libdir}

ln -sf %{openssldir}/lib/libssl.so.1.1 %{buildroot}%{_libdir}

ln -sf %{openssldir}/lib/libcrypto.so.1.1 %{buildroot}%{_libdir}

ln -sf %{openssldir}/bin/openssl %{buildroot}%{_bindir}

干净的

[ \’%{buildroot}\’ !=\’/\’ ] %{__rm} -rf %{buildroot}

文件

%{openssldir}

%defattr(-,根,根)

/usr/bin/openssl

/usr/lib64/libcrypto.so.1.1

/usr/lib64/libssl.so.1.1

%filesdevel

%{openssldir}/包括/*

%defattr(-,根,根)

%post -p /sbin/ldconfig

%postun -p /sbin/ldconfig

4.编译打包

# mkdir -p /root/rpmbuild/{构建、RPMS、来源、规格、SRPMS}

# cp openssl.spec /root/rpmbuild/SPECS/

# cp openssl-1.1.1t.tar.gz /root/rpmbuild/SOURCES/

# cd /root/rpmbuild/SPECS/

# rpmbuild -D \’版本1.1.1t\’ -ba openssl.spec

5. 确认您不需要生成的安装包。

#ll /root/rpmbuild/RPMS/x86_64

总计5656

-rw-r–r– 1根根5417376 5月12日16:10 openssl-1.1.1t-1.el7.x86_64.rpm

-rw-r–r– 1根根133608 5月12日16:10 openssl-debuginfo-1.1.1t-1.el7.x86_64.rpm

-rw-r–r– 1根根234776 5月12日16:10 openssl-devel-1.1.1t-1.el7.x86_64.rpm

2.安装openssl RPM包

后续编译openssh RPM时要使用新版本的openssl,必须在编译机上安装编译好的openssl RPM包。

无需卸载openssl-libs

# yum 删除openssl

# rpm -e openssl-devel

总计5524

-rw-r–r– 1根根5417376 5月12日16:23 openssl-1.1.1t-1.el7.x86_64.rpm

-rw-r–r– 1根根234776 5月12日16:23 openssl-devel-1.1.1t-1.el7.x86_64.rpm

仅安装openssl 和openssl-devel 软件包

# rpm -Uvh *.rpm –nodeps

# rpm -qa |grep openssl

xmlsec1-openssl-1.2.20-7.el7_4.x86_64

openssl-libs-1.0.2k-26.el7_9.x86_64

openssl-1.1.1t-1.el7.x86_64

openssl-devel-1.1.1t-1.el7.x86_64

#openssl版本

OpenSSL 1.1.1t 2023 年2 月7 日

3.编译生成openssh RPM包

1.下载源码包

openssh源码包下载链接:https://cloudflare.cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/

一个在Linux图形上输入密码的软件包。

X11-ssh-askpass下载链接:https://src.fedoraproject.org/repo/pkgs/openssh/x11-ssh-askpass-1.2.4.1.tar.gz/8f2e41f3f7eaa8543a2440454637f3c3/

2. 编译

# cp openssh-9.3p1.tar.gz /root/rpmbuild/SOURCES/

# cp x11-ssh-askpass-1.2.4.1.tar.gz /root/rpmbuild/SOURCES/

# tar zxvf openssh-9.3p1.tar.gz

# cp openssh-9.3p1/contrib/redhat/openssh.spec /root/rpmbuild/SPECS/

# vi /root/rpmbuild/SPECS/openssh.spec

变化如下:

1)修改原来的openssh.spec。

%global no_x11_askpass 0

%global no_gnome_askpass 0

换衣服

%global no_x11_askpass 1

%global no_gnome_askpass 1

2)注释掉#BuildRequires: openssl-devel 1.1。

3)插入–with-ssl-dir=/usr/local/openssl

% 配置、设置\\

–sysconfdir=%{_sysconfdir}/ssh \\

–libexecdir=%{_libexecdir}/openssh \\

–datadir=%{_datadir}/openssh \\

–with-default-path=/usr/local/bin:/bin:/usr/bin \\

–with-superuser-path=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin \\

–with-privsep-path=%{_var}/空/sshd \\

–with-ssl-dir=/usr/local/openssl \\

–mandir=%{_mandir} \\

–with-mantype=人\\

–禁用条带\\

# rpmbuild -ba /root/rpmbuild/SPECS/openssh.spec

3.查看生成的安装包。

#ll /root/rpmbuild/RPMS/x86_64/openssh*

-rw-r–r– 1 root root 667080 5月12日16:47 /root/rpmbuild/RPMS/x86_64/openssh-9.3p1-1.el7.x86_64.rpm

-rw-r–r– 1 root root 639504 5月12日16:47 /root/rpmbuild/RPMS/x86_64/openssh-clients-9.3p1-1.el7.x86_64.rpm

-rw-r–r– 1 root root 3192984 5月12日16:47 /root/rpmbuild/RPMS/x86_64/openssh-debuginfo-9.3p1-1.el7.x86_64.rpm

-rw-r–r– 1 root root 470000 5月12日16:47 /root/rpmbuild/RPMS/x86_64/openssh-server-9.3p1-1.el7.x86_64.rpm

4. 在测试机上安装openssl 和openssh RPM 包

1.安装openssl RPM包

请参阅步骤2。安装openssl RPM 软件包。

2.安装openssh RPM包

# cp /etc/ssh/sshd_config /root/

总计1740

-rw-r–r– 1 root root 667080 5月12日17:04 openssh-9.3p1-1.el7.x86_64.rpm

-rw-r–r– 1 root root 639504 5月12日17:04 openssh-clients-9.3p1-1.el7.x86_64.rpm

-rw-r–r– 1 root root 470000 5月12日17:04 openssh-server-9.3p1-1.el7.x86_64.rpm

# rpm -Uvh openssh-*

# mv /root/sshd_config /etc/ssh/

mv: 覆盖“/etc/ssh/sshd_config”?

#rm -rf /etc/ssh/ssh_host_*

# systemctl 重新启动sshd

#ssh -V

OpenSSH_9.3p1、OpenSSL 1.1.1t 2023 年2 月7 日

请注意PAM 问题。如果配置文件中打开UsePAM yes,服务器可能会拒绝登录。要解决该问题,需要修改相应的/etc/pam.d/sshd文件。

#cat/etc/pam.d/sshd

#%PAM-1.0

需要身份验证pam_sepermit.so

身份验证子栈密码身份验证

身份验证包括登录后

# 与polkit 一起使用以重新验证远程会话中的用户身份

准备-auth 选项pam_reauthorize.so

需要帐户pam_nologin.so

帐号包含密码验证

密码包括密码验证

# pam_selinux.so close 必须是第一个会话规则

需要会话pam_selinux.so 关闭

需要会话pam_loginuid.so

# pam_selinux.so open 后面应该只有在用户上下文中运行的会话

需要会话pam_selinux.so 打开env_params

会话需要pam_namespace.so

pam_keyinit.so 强制取消会话选项

会话包括密码验证

会话包括登录后

# 与polkit 一起使用以重新验证远程会话中的用户身份

-会话选项pam_reauthorize.so 准备

以上从网上为#CentOS7编译生成openssl和openssh RPM包的相关内容仅供参考。相关信息请参见官方公告。

原创文章,作者:CSDN,如若转载,请注明出处:https://www.sudun.com/ask/92787.html

(0)
CSDN's avatarCSDN
上一篇 2024年7月4日 下午4:33
下一篇 2024年7月4日 下午4:34

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注