一,备份配置文件,以备升级失败进行回退

二,下载安装包

wget http://www.zlib.net/zlib-1.2.11.tar.gz

wget https://openbsd.mirror.netelligent.ca/pub/OpenBSD/OpenSSH/portable/openssh-7.4p1.tar.gz

wget https://www.openssl.org/source/openssl-1.0.2m.tar.gz

三,查看当前系统版本

四,开启telnet连接通道

yum安装telnet

yum -y install telnet-server*

关闭防火墙

/etc/init.d/iptables stop

编辑配置文件

vim /etc/xinetd.d/telnet

disable值yes改为no

允许root用户通过telnet登录

mv /etc/securetty /etc/securetty.old

启动并设置开机启动

/etc/init.d/xinetd start

chkconfig xinetd on

验证 telnet 127.0.0.1

五,安装编译工具包

yum  install gcc pam-devel zlib-devel -y

六,安装zlib

解压

tar -xf zlib-1.2.11.tar.gz

进入目录

cd zlib-1.2.11

编译

./configure --prefix=/usr

make

卸载

rpm -e --nodeps zlib

make install

共享库文件注册到系统

echo '/usr/lib' >> /etc/ld.so.conf

ldconfig

七,升级openssl

备份当前openssl

mv /usr/lib64/openssl/ /usr/lib64/openssl.old

mv /usr/bin/openssl /usr/bin/openssl.old

mv /etc/pki/ca-trust/extracted/openssl /etc/pki/ca-trust/extracted/openssl.old

如下两个库文件必须先备份,因系统内部分工具(如yum、wget等)依赖此库,而新版OpenSSL不包含这两个库

cp /usr/lib64/libcrypto.so.10 /usr/lib64/libcrypto.so.10.old

cp /usr/lib64/libssl.so.10 /usr/lib64/libssl.so.10.old

卸载当前openssl

rpm -qa |grep openssl|xargs -i rpm -e --nodeps {}

安装openssl

tar -xf openssl-1.0.2m.tar.gz

cd openssl-1.0.2m

./config --prefix=/usr/local/ssl --openssldir=/etc/ssl --shared zlib

make

make test

make install

ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl

ln -s /usr/local/ssl/include/openssl /usr/include/openssl

echo "/usr/local/ssl/lib" >> /etc/ld.so.conf

ldconfig -v

验证

openssl version

PS:必须加上--shared,否则编译时会因找不到新安装的openssl的类库而报错

恢复共享库

mv  /usr/lib64/libcrypto.so.10.old  /usr/lib64/libcrypto.so.10

mv  /usr/lib64/libssl.so.10.old  /usr/lib64/libssl.so.10

八,升级openssh

备份当前openssh

mv /etc/ssh /etc/ssh.old

卸载

rpm -qa |grep openssh|xargs -i rpm -e --nodeps {}

openssh安装前环境配置

install  -v -m700 -d /var/lib/sshd

chown  -v root:sys /var/lib/sshd

groupadd -g 51 sshd

useradd  -c 'sshd PrivSep' -d /var/lib/sshd -g sshd -s /bin/false -u 51 sshd

源码安装

tar -xf openssh-7.4p1.tar.gz

cd openssh-7.4p1

./configure --prefix=/usr  --sysconfdir=/etc/ssh  --with-md5-passwords  --with-pam  --with-zlib --with-ssl-dir=/usr/local/ssl --with-privsep-path=/var/lib/sshd

make && make install

安装后环境配置

install -v -m755    contrib/ssh-copy-id /usr/bi

install -v -m644    contrib/ssh-copy-id.1 /usr/share/man/man1

install -v -m755 -d /usr/share/doc/openssh-7.4p1

install -v -m644    INSTALL LICENCE OVERVIEW README* /usr/share/doc/openssh-7.4p1

验证是否安装成功

启动openssh服务

echo 'X11Forwarding yes' >> /etc/ssh/sshd_config

允许root直接登录

echo "PermitRootLogin yes" >> /etc/ssh/sshd_config

拷贝启动文件设置chkconfig

cp -p contrib/redhat/sshd.init /etc/init.d/sshd

chmod +x /etc/init.d/sshd

chkconfig  --add  sshd

chkconfig  sshd  on

重启sshd需要通过telnet才能登录启动sshd了

/etc/init.d/sshd restart

如果需要还原原来的ssh配置(如不需要则不进行一下操作)

rm -rf /etc/ssh

mv /etc/ssh.old /etc/ssh

恢复登录

mv  /etc/securetty.old /etc/securetty

验证 openssh已经升级为更加安全的高版本

PS:如果xshell登录出现

设置以下即可解决

参考:https://www.cnblogs.com/share100/p/6862635.html

  http://www.cnblogs.com/ldybyz/p/6699779.html

Centos6.5升级openssh至7.4版本的更多相关文章

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

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

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

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

  3. Centos6.5升级openssh、OpenSSL和wget

    1.OpenSSL 1.1.查看版本 使用如下命令查看版本: openssl version 1.2.安装gcc依赖 yum -y install gcc gcc-c++ 1.3.安装配置 ./con ...

  4. centos7 升级openssh到openssh-8.0p1版本

    环境介绍 centos7.3和centos7.6升级完毕测试登录ssh以及重启后登录ssh均无问题. 前期请自行配置好yum源(如果不会请百度) 整个过程不需要卸载原先的openssl包和openss ...

  5. centos6.5升级openssh至7.9p1

    环境说明系统环境:centos 6.5 x64 openssh-5.3p1升级原因:低版本openssh存在漏洞升级目标:openssh-7.9p1 检查环境官方文档中提到的先决条件openssh安装 ...

  6. centos6.5 升级安装pcre 8.39版本

    1.查看系统pcre安装情况 rpm -qa pcre 2.卸载系统自带的旧版本 rpm -e --nodeps pcre 3.下载新版安装 地址:ftp://ftp.csx.cam.ac.uk/pu ...

  7. CentOS 6.9 升级OpenSSH版本 关闭ssh服务后门

    最近用低版本的OpenSSH(5.9p1版本) 的漏洞给系统留了个后门 , 可以劫持root密码或者给root开启后门密码 : 利用Openssh后门 劫持root密码 如果公司还在用CentOS6的 ...

  8. centos6升级openssh至7.9

    1.为了防止升级失败登陆不了,所以需要安装telnet mkdir /root/ssh_updateyum install -y telnet-serveryum install -y xinetd ...

  9. CentOS6、7升级Openssh至7.9

    出于安全考虑,定期使用Nessus对服务器进行扫描,最新Nessus提示服务器的SSH版本有漏洞,所以把SSH升级到最新版本 1.为了防止升级失败登陆不了,所以需要安装telnet mkdir /ro ...

随机推荐

  1. 如何快速掌握man手册的使用

    man手册内容详细,解释到位,因为好多都是软件的原创者自己写的说明文档,当然是第一手的资料.但是,有几个难点需要克服: 1.英文不易阅读,通常我是先在书上或者网络上找到某个命令的详细说明和解释,然后在 ...

  2. [svc]salt-grains

    用途 1,匹配客户端 2,配置文件里使用 3,资产管理 定义grains方法1: 方法2:

  3. Qt打开文件对话框

    项目中需要打开文件对话框,就查了一下,不得不说Qt的帮助文档做的真好,非常详细.要实现这个功能有两种方式,使用QFileDialog的静态方法,实例化QFileDialog对象. 基本算是照抄帮助文档 ...

  4. JAVA第一个窗体小程序

    import java.awt.*;public class Day1015_Frame{    public static void main(String[] args)    {         ...

  5. MapReduce编程实例6

    前提准备: 1.hadoop安装运行正常.Hadoop安装配置请参考:Ubuntu下 Hadoop 1.2.1 配置安装 2.集成开发环境正常.集成开发环境配置请参考 :Ubuntu 搭建Hadoop ...

  6. Java反射机制在代理模式中的使用

    代理模式的核心思路就是一个接口有两个子类,一个子类完成核心的业务操作,另一个子类完成与核心业务有关的辅助性操作. 代理模式分为静态代理模式和动态代理模式.  静态代理模式: //接口类 interfa ...

  7. SpringBoot资源国际化

    Springboot根据浏览器实现网站资源国际化 根据浏览器地区主动选择资源 1.创建资源化文件 resource目录下创建messages目录 创建messages_en_US.properties ...

  8. Spring.Net框架三:使用Spring.Net框架实现多数据库

    在前面的两篇文章中简单介绍了Spring.Net和如何搭建Spring.Net的环境,在本篇文章中将使用Spring.Net实现多数据库的切换. 一.建立一个空白的解决方案,名称为“SpringDot ...

  9. 2015 Multi-University Training Contest 3 1001 Magician

    Magician Problem's Link: http://acm.hdu.edu.cn/showproblem.php?pid=5316 Mean: n个数,2种操作,1是单点更新,2是询问区间 ...

  10. AWT是Java最早出现的图形界面,但很快就被Swing所取代

    AWT是Java最早出现的图形界面,但很快就被Swing所取代. Swing才是一种真正的图形开发. AWT在不同平台所出现的界面可能有所不同:因为每个OS都有自己的UI组件库,java调用不同系统的 ...