对于新安装的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. Nginx服务器的平滑启动、平缓停止、平滑升级

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

  3. Nginx学习——Nginx启动、停止、重启和信号控制以及平滑升级

    1.Nginx 启动与停止 (1)启动方式 启动格式:Nginx可执行文件地址 -c Nginx配置文件地址 /etc/local/nginx/sbin/nginx -c /root/dufy/ngi ...

  4. 关于centos7和centos6中平滑升级nginx到新版本v1.12.1修复nginx最新漏洞CVE-2017-7529的解决方案

    关于centos7和centos6中平滑升级nginx到新版本v1.12.1修复CVE-2017-7529漏洞的解决方案 漏洞描述 2017年7月11日,Nginx官方发布最新的安全公告,在Nginx ...

  5. Centos6.5 离线 Openssh 升级

    目录 OpenSSH 升级 一.基于 Dropbear 设置备用 ssh 服务器 二. Openssh 更新 2.1 ssh配置 备份 2.2 openssh 升级 Openssl 升级(由于Open ...

  6. 高性能Web服务器Nginx的配置与部署研究(14)平滑升级你的Nginx

    1.概述(可以直接跳过看第2部分) Nginx方便地帮助我们实现了平滑升级.其原理简单概括,就是: (1)在不停掉老进程的情况下,启动新进程. (2)老进程负责处理仍然没有处理完的请求,但不再接受处理 ...

  7. nginx启动、重启、重新加载配置文件和平滑升级

    Nginx有一个主进程和几个工作进程,主进程的主要作用就是读取.评估配置文件和管理工作进程,工作进程对请求做实际处理.工作进程的数量是在配置文件中配置的,一般设置为cpu的核心数*线程数. nginx ...

  8. 如何安全的将VMware vCenter Server使用的SQL Server Express数据库平滑升级到完整版

    背景: 由于建设初期使用的vSphere vCenter for Windows版,其中安装自动化过程中会使用SQL Server Express的免费版数据库进行基础环境构建.而此时随着业务量的增加 ...

  9. 让你的网站免费支持 HTTPS 及 Nginx 平滑升级

    为什么要使用 HTTPS ? 首先来说一下 HTTP 与 HTTPS 协议的区别吧,他们的根本区别就是 HTTPS 在 HTTP 协议的基础上加入了 SSL 层,在传输层对网络连接进行加密.简单点说在 ...

随机推荐

  1. FastReport

    看下面 https://www.cnblogs.com/m0488/category/477792.html

  2. Mac下替代Total Commander的工具推荐

    [推荐]:Nimble Commander 轻量小巧,免费版与收费版区别不大,比较稳定,支持sftp等其他网络存储,支持自定义热键,预览等. http://magnumbytes.com/ [其他]: ...

  3. 【转】Windows IIS注册asp 此操作系统版本不支持此选项 错误解决方法

    原文:https://blog.csdn.net/sweety820/article/details/79538973 更新Win10,原来的IIS站点访问不了,原因是因为IIS 没有.net 4.5 ...

  4. MariaDB 存储过程与函数(10)

    MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可MariaDB的目的是完全兼容MySQL,包括API和命令行,MySQL由于现在闭源了,而能轻松成为MySQ ...

  5. mysql存储过程双重循环示例

    BEGIN ); DECLARE done INT DEFAULT FALSE; DECLARE cursor_rule CURSOR FOR SELECT s.id FROM d_menu_type ...

  6. pika配置文件说明

    # Pika 端口 port : 9221 # pika进程数量,不建议超过核心数量,pika是多线程的 thread-num : 1 # Sync 线程数量 sync-thread-num : 6 ...

  7. js获取n分钟(或n小时或n个月)后(或前)的时间(日期)

    标题有点绕,其实意思就是根据系统当前时间,获取n分钟或n小时或n个月后的时间. 例如:当前时间下,获取10分钟后的时间. var date=new Date(); //1. js获取当前时间 var ...

  8. QQ gtk,bkn算法

    public long GetGTK(string sKey) { ; , len = sKey.Length; i < len; ++i) { hash += (hash << ) ...

  9. vue教程1-05 事件 简写、事件对象、冒泡、默认行为、键盘事件

    vue教程1-05 事件 简写.事件对象.冒泡.默认行为.键盘事件 v-on:click/mouseover...... 简写的: @click="" 推荐 事件对象: @clic ...

  10. 解决SecureCRT/Xshell无法以root用户连接Ubuntu

    首先执行命令ps -e | grep ssh .查看是否有ssh进程运行. 确认没有ssh运行,且系统未安装openssh.   然后在系统终端界面内输入apt-get update命令. (确保系统 ...