1、准备相关的包

openssh下载地址:http://mirror.internode.on.net/pub/OpenBSD/OpenSSH/portable/

openssl相关包下载:http://www.openssl.org/source/

pam相关包下载:http://pkgs.org/centos-6/centos-x86_64/

zlib包下载: http://zlib.net/

首先看一下自身的ssh版本

#ssh -V :

openssh_5.3p1

2、安装zlib

tar -zxvf zlib-1.2.8.tar.gz

cd zlib-1.2.8

./configure --prefix=/usr/local/zlib && make && make install

3、安装openssl-fips

tar zxvf openssl-fips-2.0.12.tar.gz

cd openssl-fips

./config

make && make install

4、安装openssl

tar -zxvf openssl-1.0.1c.tar.gz

cd openssl-1.0.1c

./config fips --shared

make && make install

5、将新编译的openssl library 加入系统动态库链接中

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

ldconfig

6、安装pam,首先卸载旧版本

查看版本信息:rpm -qa|grep pam

卸载旧版本:rpm -e --nodeps
pam-1.1.1-17.el6.x86_64

安装pam:依次安装

rpm -ivh tcp_wrappers-devel-7.6-57.el6.x86_64.rpm

pam-1.1.1-20.el6_7.1.x86_64.rpm

pam-devel-1.1.1-20.el6_7.1.x86_64.rpm

7、安装OpenSSH

tar zxvf openssh-7.4p1.tar.gz

cd openssh-7.4p1

./configure \

--prefix=/usr \         //安装路径

--sysconfdir=/etc/ssh \       //配置文件路径

--with-md5-passwords \     //一种密钥,加密算法

--with-pam \      //编译pam文件

--with-tcp-wrappers \   //编译tcp—wrappers

--with-ssl-dir=/usr/local/ssl \   //openssl的路径(配置的时候可能会报错,根据实际路径写)

--with-zlib=/usr/local/zlib \     //编译zlib

--without-hardening

##配置报错"OpenSSL headers missing - please install first or check
config.log ***"的错误,这是缺少openssl-devel所致,只需安装openssl-devel即可,执行命令:yum
install openssl-devel

此处执行编译时可能报error: *** zlib.h missing - please install first or check
config.log ***"这是由于缺少zlib-devel所致,只需安装zlib-devel即可,执行命令:yum install
zlib-devel;

make && make install

8、加入到系统服务,重启sshd升级成功

chkconfig --add sshd

service sshd restart

重新启动报错:关闭selinux即可。

#ssh -V

openssh_7.4p1升级成功

#在升级完OpenSSH和OpenSSL后,SecureCRT无法SSH登录,但是Putty等工具可以正常登录;是因为 SSH和SSL升级后,取消了原先一些不太安全的加密算法,Clinet不支持新的算法所以无法交换密钥;建议要求客户升级SecureCRT版本至6.5或7.x,或更换最新版的Xshell、Putty等工具,即可正常登录

linux升级openssh7.4sp1的更多相关文章

  1. linux升级mysql到5.7

    原文:http://blog.csdn.net/qing_gee/article/details/41774265 Linux升级MySQL版本到5.7. 1.下载Linux的5.7版本,主要需要两个 ...

  2. 【转载】Linux升级NTPD服务器-编译安装ntp-4.2.8p12与配置

    [转载]Linux升级NTPD服务器-编译安装ntp-4.2.8p12与配置 1. 系统与软件版本 1.1 系统版本 rhel6.4(Red Hat Enterprise Linux Server r ...

  3. Linux 升级内核开启 TCP BBR 有多大好处

    前言 如果你有订阅一些科技新闻,应该会有看过内核在4.9当中加入了一个新的算法,来解决在有一定的丢包率的情况下的带宽稳定的问题,这个是谷歌为我们带来的干货,新的 TCP 拥塞控制算法 BBR (Bot ...

  4. Linux升级命令yum upgrade和yum update的区别

    Linux升级命令有两个分别是yum upgrade和yum update, 这个两个命令是有区别的: yum -y update 升级所有包同时也升级软件和系统内核 yum -y upgrade 只 ...

  5. Linux 部署或升级openssh7.5p1

    运维Linux系统,部署或升级openssh是经常面临的事,以下已redhat6和redhat7为例. 在redhat6中部署openssh会有什么坑,在编辑openssh源码包时会报一些类似的错误, ...

  6. centos7.5升级openssh7.4到7.9

    漏洞扫描工具扫描出openssh用户枚举漏洞,搜索资料得知无补丁和升级包,解决这个漏洞得安装漏洞修复之后的版本version>7.8. 环境 linux版本: CentOS Linux rele ...

  7. linux升级openssh到7.9

    客户linux主机ssh存在高危漏洞,需要进行升级修复. linux联网后,直接命令行: [root@gw ~]# yum update openssl -y 此命令只是小版本的升级,比如将opens ...

  8. CentOS 6.8升级OpenSSH7.7p

    近期因centos 6.x 默认openssh扫描存在大量漏洞,基于安全考虑,需要将openssh_5.3p1升级为最新版,网上查了很多教程,发现openssh存在大量依赖,不解决依赖问题很难保证其他 ...

  9. LInux升级Python版本2.7.11所遇问题汇总

    首先请原谅我使用校园网络,基本上打不开谷歌,网络搜取得帮助均来自度娘. 对于我这个linux新手 IT 新手来说,自己升级点东西好担心,万一出错,可能都要重来.... 参照度娘内容和自己摸索,今天晚上 ...

随机推荐

  1. docker.service启动失败:Unit not found

    docker.service启动失败:Unit not found 版权声明:本文为博主原创文章,未经博主允许不得转载. 背景 因为最近一直在折腾Kubernetes集群版本升级.Docker版本升级 ...

  2. lua 运算符

    lua 运算符 算术运算符 操作符 描述 + 加 - 减 * 乘 / 除 % 求模 ^ 求幂 示例程序 local a, b = 1, 2 print(a + b) print(a - b) prin ...

  3. 用Entity Framework往数据库插数据时,出现异常,怎么查看异常的详细信息呢?

    做项目时,在用Entity Framework往数据库插数据时,程序报异常,但是通过报的异常死活没法查看异常的详细信息.这让人很是烦恼.本着自己动手丰衣足食的原则,通过查看资料终于找到了显示异常详细信 ...

  4. 【openstack N版】——摘除一个计算节点

    1.查看计算节点 #查看所有计算节点 [root@open-control01 ~]# nova service-list+----+------------------+-------------- ...

  5. java虚拟机总结

    jvm内存模型 u  程序计数器 u  Java栈(虚拟机栈) u  本地方法栈 u  Java堆 u  方法区及其运行时常量池 垃圾回收机制 u  新生代和老年代 u  参数设置 u  垃圾回收(M ...

  6. java 对时间(Date)随笔!

    /** * 获取系统当前时间 * @return 系统当前时间 */ public static Date now() { return new Date(); } /** * 根据指定的日期,获取其 ...

  7. mysql5.7.16二进制安装

    1.下载二进制文件  cd /data  wget http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.16-linux-glibc2.5-x ...

  8. 更快的理解js中循环嵌套

    [循环控制语句] break语句:终止本层循环,继续执行循环后面的语句:(当循环有多层时,break只会跳出一层循环) continue语句:跳过本次循环,继续执行下次循环: (对于for循环,con ...

  9. Spring AOP的切入点表达式

    在spring Aop中要使用AspectJ的切点表达式语言来定义切点.Spring仅仅支持AspectJ切点指示器的一个子集.下表列出了Spring AOP所支持的AspectJ切点指示器. 在Sp ...

  10. Java_中快速获取系统时间

    直接调用System的currentTimeMillis()即可! long start = System.currentTimeMillis(); System.out.println(" ...