centos7 之 openssl-1.1.1v+openssh-9.4p1 升级

2023-10-07 13:21

本文主要是介绍centos7 之 openssl-1.1.1v+openssh-9.4p1 升级,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、前言

据有关部门通报,OpenSSH ssh-agent 组件存在远程代码 执行漏洞(CVE-2023-38408)。此漏洞允许远程攻击者在 OpenSSH 上执行任意命令。
OpenSSH 是使用 SSH 透过计算机网络加密通信的实现。 它是取代由 SSH Communications Securit 所提供商用版本的 开放源代码方案,是远程管理和数据传输的重要工具,能够 为用户提供安全的远程访问和文件传输功能。目前 OpenSSH 是 OpenBSD 的子项目。
一、漏洞影响范围: 5.5 < OpenSSH ≤ 9.3p1 
二、漏洞修复建议: 对于 OpenSSH,官方已发布修复该漏洞的最新版本 Ope nSSH 9.3p2;对于 OpenBSD,官方已经发布受影响版本的对 应补丁。建议受影响的用户及时更新升级,详细信息如下: https://www.openssh.com/releasenotes.html https://www.openbsd.org/errata.html 
鉴于该漏洞影响范围较大,潜在危害程度较高,各单位 要及时通知相关用户,在确保安全的前提下及时修补漏洞, 消除安全隐患,提高安全防范能力。

二、环境准备

1.系统信息

[root@localhost ~]# cat /etc/redhat-release 
CentOS Linux release 7.9.2009 (Core)

2.文件准备

openssl-1.1.1v.tar.gz
openssh-9.4p1-1.el7.x86_64.rpm
openssh-askpass-9.4p1-1.el7.x86_64.rpm
openssh-askpass-gnome-9.4p1-1.el7.x86_64.rpm
openssh-clients-9.4p1-1.el7.x86_64.rpm
openssh-debuginfo-9.4p1-1.el7.x86_64.rpm
openssh-server-9.4p1-1.el7.x86_64.rpm

3.查看原环境版本

[root@localhost ~]# openssl version
OpenSSL 1.0.2k-fips  26 Jan 2017
[root@localhost ~]# ssh -V
OpenSSH_7.4p1, OpenSSL 1.0.2k-fips  26 Jan 2017

4.注意事项

4.1 其中 openssh-9.4p1 的升级依赖于 openssl-1.1.1 版本以上,故需要先升级 openssl 之后再进行 openssh 升级

4.2 升级之前请安装好相关预防措施,如安装好 telnet 和 vsftp 服务,可参考:centos6.5 升级openssl1.1.1g、openssh8.6p1小记       

三、openssl 升级

3.1 备份当前版本的 openssl

[root@localhost ~]# mv /usr/bin/openssl /usr/bin/openssl_bak
[root@localhost ~]# mv /usr/include/openssl /usr/include/openssl_bak # 若有则备份,若无则忽略 
[root@localhost ~]# mv /usr/lib64/libssl.so.1.0.1e /usr/lib64/libssl.so.1.0.1e_bak # 重命名之后会发现无法使用 yum 和 rpm 命令了,若是有外网条件的,后面需要下载之前忘记下载的依赖或者软件,重命名回来使用 yum 就可以了,无外网条件就通过 ftp 上传 rpm 包进行安装(其实这几个过程更新 openssl 并不会导致无法登录 ssh 以及 ssh 进行文件传输,会导致的可能是其他误操作或者在更新 openssh 的时候)
[root@localhost ~]# mv /usr/lib64/libssl.so.10 /usr/lib64/libssl.so.10_bak
[root@localhost ~]# mv /usr/lib64/libcrypto.so.10 /usr/lib64/libcrypto.so.10_bak

3.2 卸载当前版本的 openssl

[root@localhost ~]# rpm -qa |grep openssl
openssl-1.0.2k-24.el7_9.x86_64
[root@localhost ~]# rpm -e openssl-1.0.2k-24.el7_9.x86_64 --nodeps

3.3 安装新版本的 openssl

[root@localhost opt]# tar -zxvf openssl-1.1.1v.tar.gz
[root@localhost opt]# cd openssl-1.1.1v
[root@localhost openssl-1.1.1v]# ./config --prefix=/usr/local/openssl shared
[root@localhost openssl-1.1.1v]# make
[root@localhost openssl-1.1.1v]# make test
[root@localhost openssl-1.1.1v]# make install

3.4 链接与配置

#(1)设置软链接
[root@localhost openssl-1.1.1v]# ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl
[root@localhost openssl-1.1.1v]# ln -s /usr/local/openssl/include/openssl /usr/include/openssl
[root@localhost openssl-1.1.1v]# ln -s /usr/local/openssl/lib/libssl.so.1.0.0 /usr/lib64/libssl.so
ln: failed to create symbolic link ‘/usr/lib64/libssl.so’: File exists
[root@localhost openssl-1.1.1v]# ln -s /usr/local/openssl/lib/libssl.so.1.0.0 /usr/lib64/libssl.so.10
[root@localhost openssl-1.1.1v]# ln -s /usr/local/openssl/lib/libcrypto.so.1.0.0 /usr/lib64/libcrypto.so.10
#(2)将 OpenSSL 的动态链接库地址写入动态链接装入器(dynamic loader)
[root@localhost openssl-1.1.1v]# echo "/usr/local/openssl/lib" >> /etc/ld.so.conf
#(3)重新加载动态链接库
[root@localhost openssl-1.1.1v]# ldconfig -v

3.5 查看升级后 openssl 版本

[root@localhost openssl-1.1.1v]# openssl version -a
OpenSSL 1.1.1v  1 Aug 2023
built on: Thu Aug 24 02:09:41 2023 UTC
platform: linux-x86_64
options:  bn(64,64) rc4(16x,int) des(int) idea(int) blowfish(ptr) 
compiler: gcc -fPIC -pthread -m64 -Wa,--noexecstack -Wall -O3 -DOPENSSL_USE_NODELETE -DL_ENDIAN -DOPENSSL_PIC -DOPENSSL_CPUID_OBJ -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DKECCAK1600_ASM -DRC4_ASM -DMD5_ASM -DAESNI_ASM -DVPAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DX25519_ASM -DPOLY1305_ASM -DNDEBUG
OPENSSLDIR: "/usr/local/openssl/ssl"
ENGINESDIR: "/usr/local/openssl/lib/engines-1.1"
Seeding source: os-specific

四、openssh 升级

4.1 卸载旧版本的 openssh

[root@localhost ~]# rpm -e --nodeps `rpm -qa | grep openssh`

4.2 安装相关依赖

[root@localhost opt]# yum install -y libICE libSM libX11 libXt atk cairo gtk2

4.3 安装新版本 openssh

[root@localhost opt]# rpm -ivh ./openssh-*.rpm
error: Failed dependencies:libcrypto.so.1.1()(64bit) is needed by openssh-9.4p1-1.el7.x86_64libcrypto.so.1.1(OPENSSL_1_1_0)(64bit) is needed by openssh-9.4p1-1.el7.x86_64libcrypto.so.1.1()(64bit) is needed by openssh-clients-9.4p1-1.el7.x86_64libcrypto.so.1.1(OPENSSL_1_1_0)(64bit) is needed by openssh-clients-9.4p1-1.el7.x86_64libcrypto.so.1.1()(64bit) is needed by openssh-server-9.4p1-1.el7.x86_64libcrypto.so.1.1(OPENSSL_1_1_0)(64bit) is needed by openssh-server-9.4p1-1.el7.x86_64
[root@localhost opt]# yum install -y perl-Crypt-SMIME.x86_64

这篇关于centos7 之 openssl-1.1.1v+openssh-9.4p1 升级的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/158036

相关文章

centos7基于keepalived+nginx部署k8s1.26.0高可用集群

《centos7基于keepalived+nginx部署k8s1.26.0高可用集群》Kubernetes是一个开源的容器编排平台,用于自动化地部署、扩展和管理容器化应用程序,在生产环境中,为了确保集... 目录一、初始化(所有节点都执行)二、安装containerd(所有节点都执行)三、安装docker-

你的华为手机升级了吗? 鸿蒙NEXT多连推5.0.123版本变化颇多

《你的华为手机升级了吗?鸿蒙NEXT多连推5.0.123版本变化颇多》现在的手机系统更新可不仅仅是修修补补那么简单了,华为手机的鸿蒙系统最近可是动作频频,给用户们带来了不少惊喜... 为了让用户的使用体验变得很好,华为手机不仅发布了一系列给力的新机,还在操作系统方面进行了疯狂的发力。尤其是近期,不仅鸿蒙O

CentOS7安装配置mysql5.7 tar免安装版

一、CentOS7.4系统自带mariadb # 查看系统自带的Mariadb[root@localhost~]# rpm -qa|grep mariadbmariadb-libs-5.5.44-2.el7.centos.x86_64# 卸载系统自带的Mariadb[root@localhost ~]# rpm -e --nodeps mariadb-libs-5.5.44-2.el7

Centos7安装Mongodb4

1、下载源码包 curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.2.1.tgz 2、解压 放到 /usr/local/ 目录下 tar -zxvf mongodb-linux-x86_64-rhel70-4.2.1.tgzmv mongodb-linux-x86_64-rhel70-4.2.1/

Centos7安装JDK1.8保姆版

工欲善其事,必先利其器。这句话同样适用于学习Java编程。在开始Java的学习旅程之前,我们必须首先配置好适合的开发环境。 通过事先准备好这些工具和配置,我们可以避免在学习过程中遇到因环境问题导致的代码异常或错误。一个稳定、高效的开发环境能够让我们更加专注于代码的学习和编写,提升学习效率,减少不必要的困扰和挫折感。因此,在学习Java之初,投入一些时间和精力来配置好开发环境是非常值得的。这将为我

usaco 1.1 Broken Necklace(DP)

直接上代码 接触的第一道dp ps.大概的思路就是 先从左往右用一个数组在每个点记下蓝或黑的个数 再从右到左算一遍 最后取出最大的即可 核心语句在于: 如果 str[i] = 'r'  ,   rl[i]=rl[i-1]+1, bl[i]=0 如果 str[i] = 'b' ,  bl[i]=bl[i-1]+1, rl[i]=0 如果 str[i] = 'w',  bl[i]=b

【WebGPU Unleashed】1.1 绘制三角形

一部2024新的WebGPU教程,作者Shi Yan。内容很好,翻译过来与大家共享,内容上会有改动,加上自己的理解。更多精彩内容尽在 dt.sim3d.cn ,关注公众号【sky的数孪技术】,技术交流、源码下载请添加微信号:digital_twin123 在 3D 渲染领域,三角形是最基本的绘制元素。在这里,我们将学习如何绘制单个三角形。接下来我们将制作一个简单的着色器来定义三角形内的像素

macOS升级后SVN升级

问题 svn: error: The subversion command line tools are no longer provided by Xcode. 解决 sudo chown -R $(whoami) /usr/local/Cellar brew install svn

CentOs7上Mysql快速迁移脚本

因公司业务需要,对原来在/usr/local/mysql/data目录下的数据迁移到/data/local/mysql/mysqlData。 原因是系统盘太小,只有20G,几下就快满了。 参考过几篇文章,基于大神们的思路,我封装成了.sh脚本。 步骤如下: 1) 先修改好/etc/my.cnf,        ##[mysqld]       ##datadir=/data/loc

Golang支持平滑升级的HTTP服务

前段时间用Golang在做一个HTTP的接口,因编译型语言的特性,修改了代码需要重新编译可执行文件,关闭正在运行的老程序,并启动新程序。对于访问量较大的面向用户的产品,关闭、重启的过程中势必会出现无法访问的情况,从而影响用户体验。 使用Golang的系统包开发HTTP服务,是无法支持平滑升级(优雅重启)的,本文将探讨如何解决该问题。 一、平滑升级(优雅重启)的一般思路 一般情况下,要实现平滑