centos7全盘备份到本地_CentOS7下制作openssl1.1.1i RPM包并升级

点击上方"walkingcloud"关注,并选择"星标"公众号

4d2d12cec15e65bcb8cf834e948f94a9.png

b0b6cd89efd67dae8676183030c0befe.png

CentOS7下制作openssl1.1.1i RPM包并升级

OpenSSL最新漏洞

OpenSSL官方发布了拒绝服务漏洞风险通告,漏洞编号为CVE-2020-1971

漏洞详情

OpenSSL是一个开放源代码的软件库包,应用程序可以使用这个包来进行安全通信,避免窃听,同时确认另一端连接者的身份。这个包广泛被应用在互联网的网页服务器上。

OpenSSL在处理EDIPartyName(X.509 GeneralName类型标识)的时候,存在一处空指针解引用,并引起程序崩溃导致拒绝服务。攻击者可通过构造特制的证书验证过程触发该漏洞,并导致服务端拒绝服务。

风险等级

漏洞风险

漏洞被利用可能导致拒绝服务

影响版本

OpenSSL : 1.0.2-1.0.2w 

OpenSSL : 1.1.1-1.1.1h

安全版本

OpenSSL : 1.1.1i 

OpenSSL : 1.0.2x

修复建议

将OpenSSL升级到1.1.1i、 1.0.2x或最新版本 

【备注】:建议您在升级前做好数据备份工作,避免出现意外

漏洞参考

https://www.openssl.org/news/vulnerabilities-1.1.1.html#CVE-2020-1971 

https://www.openssl.org/news/vulnerabilities-1.0.2.html#CVE-2020-1971

08c291c52ea152450937a23bf57d123e.png

(图片可放大查看)

openssl版本自查

针对该漏洞,在CentOS7当前的机器上进行自查

[root@centos ~]# cat /etc/redhat-release 
CentOS Linux release 7.9.2009 (Core)
[root@centos ~]# 
[root@centos ~]# rpm -aq openssl
openssl-1.0.2k-19.el7.x86_64
[root@centos ~]# 
[root@centos ~]# rpm -aq | grep openssl
xmlsec1-openssl-1.2.20-7.el7_4.x86_64
openssl-1.0.2k-19.el7.x86_64
openssl098e-0.9.8e-29.el7.centos.3.x86_64
openssl-libs-1.0.2k-19.el7.x86_64
[root@centos ~]# 
[root@centos ~]# openssl version
OpenSSL 1.0.2k-fips  26 Jan 2017
[root@centos ~]#

6d11498b4da37a0ae40b5b911962d4b7.png

(图片可放大查看)

制作OpenSSL1.1.1i rpm包

在GitHub上找到制作openssl 1.1.1i版本rpm包的脚本 

本地修改后,进行打包修改后的脚本如下install-openssl_1.1.1i.sh

#!/bin/bashset -eset -v
mkdir ~/openssl && cd ~/openssl
yum -y install \
    curl \which \
    make \
    gcc \
    perl \
    perl-WWW-Curl \
    rpm-build# Get openssl tarball
cp /root/openssl-1.1.1i.tar.gz ./# SPEC file
cat <'EOF' > ~/openssl/openssl.spec
Summary: OpenSSL 1.1.1i for Centos
Name: openssl
Version: %{?version}%{!?version:1.1.1i}
Release: 1%{?dist}
Obsoletes: %{name} <= %{version}
Provides: %{name} = %{version}
URL: https://www.openssl.org/
License: GPLv2+

Source: https://www.openssl.org/source/%{name}-%{version}.tar.gz

BuildRequires: make gcc perl perl-WWW-Curl
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
%global openssldir /usr/openssl

%description
OpenSSL RPM for version 1.1.1i on Centos

%package devel
Summary: Development files for programs which will use the openssl library
Group: Development/Libraries
Requires: %{name} = %{version}-%{release}

%description devel
OpenSSL RPM for version 1.1.1i on Centos (development package)

%prep
%setup -q

%build
./config --prefix=%{openssldir} --openssldir=%{openssldir}
make

%install
[ "%{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}

%clean
[ "%{buildroot}" != "/" ] && %{__rm} -rf %{buildroot}

%files
%{openssldir}
%defattr(-,root,root)
/usr/bin/openssl
/usr/lib64/libcrypto.so.1.1
/usr/lib64/libssl.so.1.1

%files devel
%{openssldir}/include/*
%defattr(-,root,root)

%post -p /sbin/ldconfig

%postun -p /sbin/ldconfig
EOF


mkdir -p /root/rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS}
cp ~/openssl/openssl.spec /root/rpmbuild/SPECS/openssl.spec
mv openssl-1.1.1i.tar.gz /root/rpmbuild/SOURCEScd /root/rpmbuild/SPECS && \
    rpmbuild \
    -D "version 1.1.1i" \
    -ba openssl.spec

# Before Uninstall  Openssl :   rpm -qa openssl# Uninstall Current Openssl Vesion : yum -y remove openssl# For install:  rpm -ivvh /root/rpmbuild/RPMS/x86_64/openssl-1.1.1i-1.el7.x86_64.rpm --nodeps# Verify install:  rpm -qa openssl#                  openssl version

下载openssl1.1.1i版本源码包,并上传到/root

https://www.openssl.org/source/openssl-1.1.1i.tar.gz

./install-openssl_1.1.1i.sh进行编译打包 

f1ad9102e7606814aa9dc573bd1b85fa.png

(图片可放大查看)

打完包后截图如下

708664d19e141fae7367b3a965c7d3f1.png

(图片可放大查看)

rpm升级到openssl1.1.1i

rpm -aq openssl
yum -y remove openssl
rpm -ivh /root/rpmbuild/RPMS/x86_64/openssl-1.1.1i-1.el7.x86_64.rpm --nodeps
openssl version

1b687e2e159caf4e5dcc7f53ce9302b8.png

(图片可放大查看)

46be3086019e92dfe1edbed80279f870.png

(图片可放大查看)

da4c3ae4e0a10fe13df53d2d2dfb885a.png

(图片可放大查看)

以上就是CentOS7下制作openssl1.1.1i RPM包并升级的步骤

尝试过git clone https://src.fedoraproject.org/rpms/openssl.git,利用openssl.spec进行rpmbuild -ba openssl.spec进行打包,未成功,后续有机会再研究

5eb8673da3e59ed61ea1c4f59dca7cd5.png

(图片可放大查看)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/459981.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

计算机科学与技术pdf,计算机科学与技术(.PDF

计算机科学与技术(计算机科学与技术(&#xff10;&#xff18;&#xff11;&#xff12;)(&#xff23;&#xff4f;&#xff4d;&#xff50;&#xff55;&#xff54;&#xff45;&#xff52;&#xff33;&#xff43;&#xff49;&#xff45;&#xff4e;&#xff43;&…

计算机网络基础专业找工作,2021计算机网络技术前景怎么样? 好找工作吗

很多同学想知道计算机网络技术前景怎么样&#xff0c;以下是一些相关信息的整理&#xff0c;希望能对同学们有所帮助&#xff01;计算机网络技术前景从目前的情况看&#xff0c;企业的IT技术管理岗位一般设置为企业信息主管、总监等&#xff1b;工程技术岗位设置为网络工程师、…

安装 VMware Tools

第一步&#xff1a;挂载VMware Tools 第二步&#xff1a; 将上图VMware Tools-9.2.0 XXXX.tar.gz 复制到tmp目录&#xff08;其他目录也行&#xff0c;没有权限操作需要 chmod 777 XXX 修改来获取权限&#xff09; 第三步&#xff1a;解压 tar xvzf VMwareTools-9.2.0-799703.t…

LINUX添加一块网卡地址配置及问题

如何如何网卡服务重启慢关掉service NetworkManager stopchkconfig NetworkManager off 关于NetworkManager外链&#xff1a;http://www.linuxidc.com/Linux/2013-08/88809.htm 查看cat /etc/udev/rules.d/70-persistent-net.rules是否网卡名有重复VMware虚拟机安装好CentOS6.…

afn post请求上传文件_iOS利用AFNetworking(AFN) 实现图片上传

1.上传图片以二进制流的形式上传1 #pragmamark - 文件上传2 - (IBAction)uploadImage3 {410 // 1.httpClient->url1112 // 2.上传请求POST13 NSURLRequest*request [_httpClient multipartFormRequestWithMethod:"POST"path:"upload.php" …

[每日一题jQuery] jQuery选择器总结:进一步过滤、同级操作、后代操作

jQuery选择器继承自CSS的风格&#xff0c;可以通过jQuery选择器找出特定的DOM元素&#xff0c;在此基础上对该元素做相应处理。jQuery不仅支持简单的标签选择器、类选择器、id选择器&#xff0c;还针对表单状态、子元素、元素顺序提供相应的选择器。如果熟练运用&#xff0c;则…

美国计算机专业硏究生,2014年美国计算机专业研究生排名

1 Massachusetts Institute of Technology麻省理工学院2 University of California -Berkeley加州大学伯克利分校3 Carnegie Mellon University卡内基梅隆大学4 University of Illinois-Urbana Champaign伊利诺伊大学香槟分校5 Cornell University康奈尔大学5 Georgia Institut…

abap开发注释快捷键_让ABAP开发者更加轻松的若干快捷键

引言ABAP是一种和当代编程语言在许多方面有着相当不同的编程语言。ABAP的某些方面可能会让我们奇怪&#xff0c;为什么它会如此复杂&#xff1f;而它的某些方面又是那么杰出&#xff0c;给予了ABAP开发者们比其它任何语言更多的便利。我发现有两样东西太cool了&#xff1a;朴实…

[译]不要在UI主线程中进行耗时的操作

原文&#xff1a; Why Ice Cream Sandwich Crashes your App 问题 自Android Ice Cream Sandwich发布后&#xff0c; 这个问题就开始在StackOverflow弥散开来&#xff1a; 我的应用在Android2.x上运行良好&#xff0c;但是在3.x 和4.x系统上总是强退&#xff0c;是什么导致的&a…

计算机桌面备份在哪里,电脑备份文件在哪里

电脑是我们经常使用的工具&#xff0c;为了放在电脑出现系统问题&#xff0c;有的朋友会将电脑系统备份&#xff0c;但是不知道电脑备份文件放在什么地方了&#xff0c;电脑备份文件在哪里呢&#xff1f;很多朋友还是不知道的&#xff0c;所以针对电脑备份文件保存在哪里的问题…

如何用python打印田字格_如何用 3D 打印一双顶级跑鞋回形针

马拉松赛场上的跑鞋五光十色&#xff0c;除了美观之外&#xff0c;它们还有一个重要作用&#xff1a;保护运动员不受伤害。跑步时&#xff0c;从脚碰到地面开始会受到地面的反作用力。从着陆的减速到随着脚步推蹬过程的加速&#xff0c;这一过程中脚和地面的压力会达到两个峰值…

VS Code 0.5添加ES6支持和Git工具改进

微软多平台Visual Studio 工具VS Code在7月的这次更新中提供了惠及好几种语言的开发者的多项更新。对ECMAScript6 (ES6)的支持就是其亮点之一&#xff0c;另外&#xff0c;所有用户还会发现另一些很有用处的改进——尤其是使用Git或者工程中有大量文件的用户。\\2个新的命令行选…

河北软件职业技术学院计算机专业分数线,河北软件职业技术学院历年分数线 2021河北软件职业技术学院录取分数线...

一、2019年河北软件职业技术学院各省录取分数线及录取位次统计表1、河北软件职业技术学院2019年在山东录取分数线如下&#xff1a;文科录取批次高职专科275分&#xff0c;最低录取位次为208607名、理科录取批次高职专科333分,最低录取位次为274752名&#xff1b;2、河北软件职业…

什么可以作为gcroot_面包果既能当水果又可以作为粮食,国内却无法普及,这是为什么?...

水果是我们大多数人日常都会吃的一种食物&#xff0c;现在国内的水果种类也是非常多&#xff0c;不管是国内本有的还是从国外进口的。但是你吃过面包果吗&#xff1f;可千万不要把它和非洲大陆上的面包树混为一谈&#xff0c;面包果和它半毛钱关系没有&#xff0c;它的原产地在…

Scrum meeting报告

Scrum Meeting报告 要点&#xff1a; 讨论XueBa系统已有的和待实现的功能短期内的任务分配初步确定小组成员在第一轮迭代开发中任务一、 XueBa系统已有的和待实现的功能 项目完成情况&#xff1a; 用户信息管理&#xff1a;注册(邮箱)、登录、注销(退出当前账号)、信息修改…

cookies的存值问题

2019独角兽企业重金招聘Python工程师标准>>> cookies存值问题&#xff0c;项目中遇到问题初始化时由于cookies中存在冒号导致存到cookies中时取出来被转码了&#xff0c;冒号的转码从cookies中取出来为%A3 &#xff0c;当然一开始我的设想是保存到cookies换一种保存…

计算机专业联考335分,联考专业分、文化分达到多少能过本科线(附2019年美术高考分数线汇总...

原标题&#xff1a;联考专业分、文化分达到多少能过本科线(附2019年美术高考分数线汇总说明&#xff1a;2019年美术高考录取分数线含美术类各批次文化控制线、专业控制线&#xff0c;美术统考合格线。控制线指的是&#xff0c;您达到了某个批次的控制线&#xff0c;就有资格报考…

FragmentTabHost切换Fragment时避免重复加载UI

使用FragmentTabHost时&#xff0c;Fragment之间切换时每次都会调用onCreateView方法&#xff0c;导致每次Fragment的布局都重绘&#xff0c;无法保持Fragment原有状态。 解决办法&#xff1a;在Fragment onCreateView方法中缓存View private View rootView;//缓存Fragment vie…

c++ 一个函数包括多个返回值判断_Python函数的概念和使用

函数为了便于程序的维护和更好的实现模块化&#xff0c;好的程序都会分解为很多函数。可以这么说&#xff0c;对于任何的编程语言&#xff0c;函数都是一个非常重要的概念。python 不仅简化了函数的定义过程&#xff0c;而且还大量借鉴了其他函数编程语言中的优秀特性。本章内容…

MySQL数据库引擎介绍、区别、创建和性能测试的深入分析

深入理解MySQL的数据库引擎的类型 作者&#xff1a; 字体&#xff1a;[增加 减小] 类型&#xff1a;转载本篇文章是对MySQL的数据库引擎的类型进行了详细的分析介绍&#xff0c;需要的朋友参考下你能用的数据库引擎取决于mysql在安装的时候是如何被编译的。要添加一个新的引擎&…