对于新安装的Linux服务器,默认OpenSSH及OpenSSL都不是最新的,需要进行升级以拒绝服务器漏洞攻击。本次介绍的是升级生产环境下CentOS6.x系列服务器平滑升级OpenSSL及OpenSSH的方法。

一、服务器漏洞说明

二、环境描述

1)操作系统:CentOS 6.x系列 64位

2)修补前后

  使用源码安装的方式

  

3)连接工具SecureCrt、XShell

三、升级

最好先多开几个root登录的shell窗口万一升级失败可以回退回来,或者安装dropbear只是为了在升级失败sshd启动不起来时,依然可以登录系统

3.1 下载响应源码安装包

3.1.1 下载OpenSSL源码包

下载地址:https://www.openssl.org/source/

3.1.2 下载1.0.2版本的openssl

下载地址:https://www.openssl.org/source/openssl-1.0.2j.tar.gz

3.1.3 下载OpenSSH源码包

下载地址:http://openbsd.hk/pub/OpenBSD/OpenSSH/portable/

3.2 安装Zlib

http://zlib.net/zlib-1.2.8.tar.gz
tar -zxvf zlib-1.2..tar.gz
cd zlib-1.2.
./configure --shared

make

make test

make install

3.3 安装OpenSSL

tar zxf openssl-1.0.2j.tar.gz
cd openssl-1.0.2j/
./config shared (默认安装路径/usr/local/ssl)

make
make test
(确认编译是否有问题)

make install

把老的openssl文件进行备份

mv /usr/bin/openssl /usr/bin/openssl.bak  (文件存在的话就执行这个命令)
mv /usr/include/openssl /usr/include/openssl.bak (文件存在的话就执行这个命令)

做链接

ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl  (做链接)
ln -s /usr/local/ssl/include/openssl /usr/include/openssl (做链接)

vi /etc/ld.so.conf 

在第一行加  /usr/local/ssl/lib

之后

ldconfig

让配置文件生效

最后查看当前openssl版本信息

openssl version -a

3.4 安装OpenSSH

tar zxf openssh-.3p1-CVE--.tar.gz

如为原版openssh-7.3p1包则添加下图代码,此包已经添加过。

cd openssh-.3p1/

解压openssh源码包,修改源码包根目录中的kex.c文件

搜debug("SSH2_MSG_KEXINIT received"); 在这附近

加ssh_dispatch_set(ssh, SSH2_MSG_KEXINIT, NULL);

./configure --prefix=/usr/local/myssh --sysconfdir=/usr/local/myssh/ssh --with-openssl-includes=/usr/local/ssl/include -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

(标红的部分是openssh安装的文件目录,可以自定义)

make

(make之后没有报错)

make install

修改新的OpenSSH配置文件

vi /usr/local/myssh/ssh/sshd_config

修改端口号和版本号

cd /usr/local/openssh-.3p1
cp contrib/redhat/sshd.init /etc/init.d/sshd

(把启动脚本拷贝到init.d下)

mv /usr/sbin/sshd /usr/sbin/sshd.bak

(将以前的sshd进行备份)

ln -s /usr/local/myssh/sbin/sshd /usr/sbin/sshd

(做链接)

service sshd restart

最后再用其他主机telnet这台主机,会发现已经升级到OpenSSH_7.3

CentOS6.x服务器OpenSSH平滑7.3p版本——拒绝服务器漏洞攻击的更多相关文章

  1. CentOS6.x服务器OpenSSH平滑升级到7.3p版本——拒绝服务器漏洞攻击

    对于新安装的Linux服务器,默认OpenSSH及OpenSSL都不是最新的,需要进行升级以拒绝服务器漏洞攻击.本次介绍的是升级生产环境下CentOS6.x系列服务器平滑升级OpenSSL及OpenS ...

  2. Centos6.5升级openssh至7.4版本

    一,备份配置文件,以备升级失败进行回退 二,下载安装包 wget http://www.zlib.net/zlib-1.2.11.tar.gz wget https://openbsd.mirror. ...

  3. Centos 6.5升级openssh到7.5p1版本

    centos6自带的ssh版本较低,存在高危漏洞,目前部分服务器需要升级到最新版本(目前是7.5p1). 注:升级ssh存在一定的危险性,一旦不成功可能无法通过远程连接到系统,因此在升级之前最好有远程 ...

  4. Nginx服务器的平滑启动、平缓停止、平滑升级

    注:Nginx服务在运行时,会保持一个主进程(master process)和一个或多个工作进程(worker process). 每一个进程都会有一个PID进程号,可以通过向主进程的PID进程号发送 ...

  5. jdk版本及编译版本导致服务器部署UnsupportedClassVersionError错误

    java本地代码运行正常,部署到服务器无法运行,错误如下: Caused by: java.lang.UnsupportedClassVersionError: com/teshehui/cms/ac ...

  6. Ubuntu桌面版本和服务器版本之间的区别(转载)

    转载自:http://blog.csdn.net/fangaoxin/article/details/6335992 http://www.linuxidc.com/Linux/2010-11/297 ...

  7. Windows7 64位安装最新版本MySQL服务器

    Windows7 64位安装最新版本MySQL服务器 近期,一直在研究MySQL数据库,经常修改配置文件,导致MySQL数据库无法使用,不得不反复重装MySQL数据库.以下是在Windows7 64位 ...

  8. (转)CentOS6.5安装Darwin Streaming Server搭建RTSP流媒体服务器

    参考: 1,CentOS6.5安装Darwin Streaming Server搭建RTSP流媒体服务器 http://www.yimiju.com/articles/567.html

  9. 解决服务器openssh漏洞

    解决服务器openssh漏洞 发表于 2019 年 11 月 27 日   1. 检查升级 下载7.4p1 ,链接如下 http://www.openssh.com/portable.html 2.安 ...

随机推荐

  1. Oracle日期查询:季度、月份、星期等时间信息

    --oracle有关时间信息 Select to_char(sysdate,'Q') from dual;--指定日期的季度 Select to_char(sysdate,'MM') from dua ...

  2. 深入理解HTTP协议—HTTP协议详解(真的很经典)

    引言 HTTP是一个属于应用层的面向对象的协议,由于其简捷.快速的方式,适用于分布式超媒体信息系统.它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展.目前在WWW中使用的是HTTP/1. ...

  3. HTML (Hyper Text Markup Language) 常用标签

    HTML是什么?  英文全称:Hyper Text Markup Language  中文全称:超文本标记语言  网页主要由 机构  表现 行为  组成 什么是标签?    < > 里的叫 ...

  4. Java基础---网络编程

    第一讲     概述 1.网络模型:OSI参考模型和TCP/IP参考模型 图示: 一般来说开发处于传输层和网际层,应用层为:FTP和HTTP协议等,传输层为:UDP和TCP等,网际层为:IP. 通常用 ...

  5. SpringMVC + Mybatis bug调试 SQL正确,查数据库却返回NULL

    今天碰到个bug,有点意思 背景是SpringMVC + Mybatis的一个项目,mapper文件里写了一条sql 大概相当于 select a from tableA where b = &quo ...

  6. cocos quick lua 输入框点击穿透的问题处理方案。

    条件:当前版本quick-3.3 -lua,系统 win7. 问题:在输入框(textField或者editbox,下文"输入框"就代表这两种)打开的情况下弹出其他界面盖住输入框, ...

  7. REST:JAX-RS 与 Spring

    原文:https://developer.okta.com/blog/2017/08/09/jax-rs-vs-spring-rest-endpoints 作者:Brian Demers 译者:htt ...

  8. 有var和没有var的本质区别

    我们创建一个变量: var a = 100: 同时,大家也知道,就是不写var关键字也可以创建.在很多教程和说法中,将没有var 的这个名称称之为“全局变量”.如果我在全局直接写一个var abc = ...

  9. JS的this总结(上)-call()和apply()

    JS的this总结(上)-call()和apply() ​ 相信很多人在学习JavaScript的过程中,都会了解到this,而大部分人都会特意去网络上搜一下相关资料,大部分的文章都有这么一句话: t ...

  10. 建立maven工程pom.xml报错:web.xml is missing and <failOnMissingWebXml> is set to true

    解决方式:如图添加web.xml文件即可