升级openssh漏洞

升级openssl和openssh

最近接收到客户的漏洞提醒,openssl和openssh的漏洞,解决办法就只有升级。

升级前环境

~]# ssh -V
OpenSSH_5.3p1, OpenSSL 1.0.1e-fips 11 Feb 2013
~]# rpm -qa | grep openssl
openssl-1.0.1e-15.el6.x86_64
~]# uname -r
2.6.32-431.el6.x86_64
~]# rpm -qa |grep zlib
zlib-1.2.3-29.el6.x86_64
zlib-devel-1.2.3-29.el6.x86_64

升级前后:

||升级前|升级后|

:-|:-|:-

|Openssl|Openssl_1.0.1e-fips|openssl-1.0.2j|

|Openssh|Openssh_5.3p1|Openssh-6.9p1|

升级前准备

为了防止升级openssh过程中出现问题,ssh连接断开,需要保证连接不能断开,此处使用telnet连接,也可安装别的dropbear等

telnet只允许普通用户登陆

~]# useradd robot
~]# visudo
~]# yum install telnet_server telnet -y
~]# vim /etc/xinetd.d/telnet
将disable项由yes改成no

~]# service xinetd restart
重启后即可连接

操作过程

一、安装zlib

源码安装openssh、openssl,为了避免zlib库文件版本过低,同时编译安装zlib库

~]# tar xf zlib-1.2.7.tar.gz
~]# cd zlib-1.2.7
~]# ./configure --shared
...
Checking for return value of vsnprintf()... Yes.
Checking for attribute(visibility) support... Yes.
**Looking for a four-byte integer type... Found.**
//这个是由于zlib并非使用的标准autotools,没有考虑交叉编译的情况,这个错误是执行测试程序导致的,用于检测32bit整型是int还是long还是别的,该错误无关紧要,可以忽略

~]# make && make test
~]# make install

二、安装openssl

由于openssh依赖于openssl库,所以在安装openssh前要先安装openssl库

~]# tar xf openssl-1.0.2j.tar.gz
~]# cd openssl-1.0.2j
~]# ./config shared //默认安装路径(/usr/local/ssl)
~]# make && make test  //测试没报错,继续往下执行
~]# make install

备份及软链接命令:
~]# mv /usr/bin/openssl{,_bak}
~]# mv /usr/include/openssl{,_bak}
~]# ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl
~]# ln -s /usr/local/ssl/include/openssl /usr/include/openssl

搜索出可共享的动态链接库,进而创建出动态装入程序(ld.so)所需的连接和缓存文件,让刚安装的openssl动态链接库为系统所共享。
~]# sed -i ‘1 i /usr/local/ssl/lib‘ /etc/ld.so.conf  //在文件行首添加新安装的openssl
~]# ldconfig //加载

查看版本:
~]# openssl version -a
**OpenSSL 1.0.2j  26 Sep 2016**
built on: reproducible build, date unspecified
platform: linux-x86_64
options:  bn(64,64) rc4(16x,int) des(idx,cisc,16,int) idea(int) blowfish(idx)
compiler: gcc -I. -I.. -I../include  -fPIC -DOPENSSL_PIC -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM
OPENSSLDIR: "/usr/local/ssl"

二、安装openssh

更新openssh前,为了防止ssh连接断开,最好先telnet进服务器,防止意外发生

~]# mkdir /usr/local/myssh/ssh -p  //安装在自己新建的目录里
~]# tar xf openssh-7.4p1.tar.gz
~]# cd openssh-7.4p1
~]# ./configure --prefix=/usr/local/myssh --sysconfdir=/usr/local/myssh/ssh - -with-ssl-dir=/usr/local/ssl --with-privsep-path=/var/myempty --with-privsep-user=sshd --with-zlib --with-ssl-engine --with-md5-passwords --disable-etc-default-login

~]# make && make install

备份及软链接命令:
~]# mv /etc/init.d/sshd{,_bak}
~]# cp -a contrib/redhat/sshd.init /etc/init.d/sshd   //拷贝启动脚本
~]# chmod u+x /etc/init.d/sshd

~]# mv /usr/sbin/sshd{,_bak}
~]# ln -s /usr/local/myssh/sbin/sshd /usr/sbin/sshd //sshd命令

~]# mv /usr/bin/ssh-keygen{,_bak}
~]# ln -s /usr/local/myssh/bin/ssh-keygen /usr/bin/ssh-keygen //老的ssh-keygen默认没有-A参数,如果不链接,就会有提示信息“ssh-keygen: illegal option -- A”

~]# mv /usr/bin/ssh{,_bak}
~]# mv /usr/local/myssh/

查看版本:
~]# ssh -V
OpenSSH_7.4p1, OpenSSL 1.0.2j  26 Sep 2016
修改配置文件,并检验升级是否成功
~]# vim /usr/local/myssh/ssh/sshd_config 

修改如下配置项:

  • PermitRootLogin yes //允许root用户登陆

原文地址:https://www.cnblogs.com/dance-walter/p/9047041.html

时间: 2024-07-30 17:24:14

升级openssh漏洞的相关文章

Centos 6.5升级openssh漏洞

CentOS 6.5下openssh升级 在有的企业中每年都会安全扫描,因为实现远程连接比较重要,如果openssh版本过低,就要对其升级,本文主要讲述openssh升级的步骤. openssh升级主要有三步: (1) 安装新版本的openssl (2) 安装新版本的openssh 如果是生产环境,并且存在备机,建议从备机开始升级,备机升级完了再升级主机. 详细的过程如下: 1.1  安装zlib Zlib下载地址: http://www.greenxiazai.com/soft/101492.

CentOS 6.6升级OpenSSH到最新版本7.5.p1

本文主要简单记录CentOS 6.6下OpenSSH升级步骤,安装编译所需工具包 yum install gcc pam-devel zlib-devel 一.升级原因7.4以下openssh版本存在严重漏洞:1.OpenSSH 远程权限提升漏洞(CVE-2016-10010)  2.OpenSSH J-PAKE授权问题漏洞(CVE-2010-4478)  3.Openssh MaxAuthTries限制绕过漏洞(CVE-2015-5600)  OpenSSL>=1.0.1可以不用升级OpenS

CentOS 5.8 升级openssh至6.7

一.简介 最近公司一些生产系统服务器被机房扫描出openssh工具有漏洞,于是对线上的一些服务器中的openssh进行的升级,现将具体的过程写成博文,希望对大家有所帮助-- 由于CentOS 5 官方所提供的yum源中最新版本的openssh也相对很老了,所以就只有两种办法了: 1.自制RPM包进行升级: 本来我最先考虑的是使用这种方法,因为在生产环境中缺乏一些编译所需要的软件包,如果都一一安装的话又会产生未知的安全隐患,但是当把RPM制作完成后,在测试机上测试的时候发现最新版本的openssh

SuSe 11以编译安装的方式升级OpenSSH、OpenSSL及依赖问题解决

OpenSSH OpenSSH是实现远程控制.远程加密传输数据的安全的网络连接工具,也就是为我们提供ssh服务的程序.SSH由服务端和客户端组成,服务端是一个守护进程(sshd),在后台运行并响应客户端的连接请求:客户端包含ssh(openssh-clients).scp.rsync.slogin.sftp等应用程序. SSH服务本身提供了一种安全加密的数据传输方式.在一些比较旧的Linux系统版本中,多数是openssh 5版本.而目前OpenSSH已更新到OpenSSH 7.X版本,修复许多

【完美升级Openssh】redhat 6.8 x64升级SSH到OpenSSH_7.4p1

需求: 因openssh扫描存在漏洞,基于安全考虑,需要将openssh_7.1p1升级为openssh_7.4p1. 操作如下: 1.下载安装包: openssh的安装需要依赖zlib和openssl,因此要一并下载下来. 注意:openssh最新版7.4p1依赖的openssl版本为1.0.2k,而不是其最新版1.1.0e(使用此版会升级失败). 官网地址: http://www.zlib.net http://www.openssl.org http://www/openssl.org 下

centos6.6升级openssh到最新版本7.5.p1

本文主要简单记录下openssh升级步骤,及一键升级脚本. 安装编译所需工具包 yum install gcc pam-devel zlib-devel 一.升级原因 7.4以下openssh版本存在严重漏洞: 1.OpenSSH 远程权限提升漏洞(CVE-2016-10010) 2.OpenSSH J-PAKE授权问题漏洞(CVE-2010-4478) 3.Openssh MaxAuthTries限制绕过漏洞(CVE-2015-5600) OpenSSL>=1.0.1可以不用升级OpenSSL

redhat6.4升级openssh至6.7

1:简介 最近浙江电信对线上服务器进行漏洞扫描,暴露出原有的openssh有漏洞,建议升级openssh版本: 2:操作环境 Red Hat Enterprise Linux Server release 6.4 3:所需软件包 (1)gcc zlib zlib-devel make pam pam-devel  (升级过程中所需依赖包) (2)dropbear-2014.66.tar.bz2(代替原有用pm包安装openssh环境) (3)openssh-6.7.tar.gz(升级的软件包)

平滑升级openssh版本方法

因为老版本的openssh存在远程访问执行漏洞,因此安装了Linux系统后需要升级openssh来修复此漏洞,加强服务器安全性. 注意:升级过程中不要重启sshd服务,否则会远程连接不上!! 升级版本为:openssh-6.6p1 升级方法: 1.加载本地源(方法不描述了) 2.执行下列命令 yum install bash -y yum install -y zlib zlib-devel openssl openssl-devel tar -zxvf openssh-6.6p1.tar.gz

升级OpenSSH及其OpenSSL的正确姿势

需求说明 在本小节中,让我花点篇幅绕个弯子解释下文章标题是什么意思,以及这篇文章到底讲的是什么,这将有助于理解本文的内容. 有时,可能由于审计需要或修复漏洞的需要,我们可能会遇到这么一个需求:升级操作系统的openssl. 那,怎么升级操作系统的openssl呢?那很简单,一条命令搞定: [[email protected] ~]# yum update openssl -y 没错,这的确可以升级操作系统的openssl.这只是小版本的升级,比如将openssl从1.0.1e-43版本升级到1.