环境:ubuntu

需要的安装包:

http://zlib.net/   zlib 1.2.11最新版

http://www.linux-pam.org/library/   pam 1.3.0

https://github.com/openssl/openssl   openssl 1.0.2k

https://github.com/openssh/openssh-portable  openssh-7.5p1

(可以用wget 或者 git clone 获取,并选择特定的版本)

(注:源码安装坑还是很多的,如果可以用包安装的话尽量用包安装,折腾了几天才弄好,而且由于不熟悉linux,很多错误都要慢慢研究)

注意过程中如果不成功会导致无法使用ssh连接,所以成功之前最好打开多个连接窗口,成功后才关闭,过程中不要关闭电脑

需要切换到su账户

1.升级zlib

tar zxvf zlib-1.2.11.tar.gz
cd zlib-1.2.11
./configure
make && make install

2.升级pam

tar zxvf  Linux-PAM-1.3.0.tar.gz

cd Linux-PAM-1.3.0

./configure

make && make install

3、编译安装openssl

删除原来的版本,否则会在第四步出现openssl header 和openssl lib 版本不一致的错误

多次输入命令: ldd /usr/bin/openssl 找到 libssl 和 libcrypto 所在路径,并删除它们,直到没有

(参考:http://askubuntu.com/questions/830466/libcrypto-so-1-0-0-no-version-information-available-required-by-ssh)

tar zxvf openssl-1.0.2k.tar.gz   (或者 git checkout OpenSSL_1_0_2k)
cd openssl-1.0.2k

./config --prefix=/usr/ --openssldir=/usr/ shared

make clean

make && make install

用 openssl version 命令可查看openssl的版本,成功后输入以下命令

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

4、编译安装openssh
tar zxvf openssh-7.5p1.tar.gz
cd openssh-7.5p1
./configure --with-zlib --with-ssl-dir --with-pam --bindir=/usr/bin --sbindir=/usr/sbin --sysconfdir=/etc/ssh

make clean

make && make install

完成后查看ssh版本。ssh -V查看

openssh升级到openssh-7.5p1踩坑的更多相关文章

  1. Spring Cloud 升级最新 Finchley 版本,踩坑指南!

    https://blog.csdn.net/youanyyou/article/details/81530240 Spring Cloud 升级最新 Finchley 版本,踩了所有的坑! 2018年 ...

  2. CentOS openssh升级到openssh可用

    1. https://blog.csdn.net/moonpure/article/details/54575401 2. http://www.it165.net/admin/html/201303 ...

  3. 实战redhat6.5离线升级openssl&openssh

    记录一次RedHat6.5升级openssl&openssh踩坑填坑.由于机房信息安全员用绿盟扫描出服务器openssh有8个重要的安全漏洞,最好的解决方式就是升级版本. 注意事项: 先升级o ...

  4. Centos 6.x Openssh 升级 7.7p1 版本

    OpenSSH 升级 目前在一家金融公司上班,正好赶上金融公司各种暴雷,本人心里慌慌的. 然后就是金融公司要进行的最低的三级等保评测,各种修改系统安全,密码强度.WAF.防火墙等各种. 评测公司对我司 ...

  5. jQuery升级踩坑大全

    jQuery升级踩坑大全 背景 jQuery想必各个web工程师都再熟悉不过了,不过现如今很多网站还采用了很古老的jQuery版本.其实如果早期版本使用不当,可能会有DOMXSS漏洞,非常建议升级到j ...

  6. Spark 1.6升级2.x防踩坑指南

    原创文章,谢绝转载 Spark 2.x自2.0.0发布到目前的2.2.0已经有一年多的时间了,2.x宣称有诸多的性能改进,相信不少使用Spark的同学还停留在1.6.x或者更低的版本上,没有升级到2. ...

  7. 【原创】大叔问题定位分享(28)openssh升级到7.4之后ssh跳转异常

    服务器集群之间忽然ssh跳转不通 # ssh 192.168.0.1The authenticity of host '192.168.0.1 (192.168.0.1)' can't be esta ...

  8. centos7生产环境下openssh升级

    由于生产环境ssh版本太低,导致使用安全软件扫描时提示系统处于异常不安全的状态,主要原因是ssh漏洞.推荐通过升级ssh版本修复漏洞 因为是生产环境,所以有很多问题需要注意.为了保险起见,在生产环境下 ...

  9. Centos6.5 升级Openssl + Openssh

    xu言: 平时很懒,都不想写blog.今天(2018.05.15)开始尝试每天写一篇吧,看我自己能坚持多久! 准备工作: 为了防止在操作过程中导致ssh远程中断,首先安装一个telnet-server ...

随机推荐

  1. 分形之拆分三角形(Split Triangle)

    前面讲了谢尔宾斯基三角形,它是不停地将一个三角形拆分三个与之相似的三角形.这一节给大家展示的图形是将一个等腰钝角三角形不停地拆分两个与之相似的三角形. 核心代码: static void SplitT ...

  2. 记录.NET Core在CentOS上基于Jenkins自动化发布

    1.安装Jenkins,我这里采用的是非docker方式安装(两种都行,任选一种) 参考:https://www.cnblogs.com/xiaxiaolu/p/10357806.html https ...

  3. Spring IOC 容器源码分析 - 获取单例 bean

    1. 简介 为了写 Spring IOC 容器源码分析系列的文章,我特地写了一篇 Spring IOC 容器的导读文章.在导读一文中,我介绍了 Spring 的一些特性以及阅读 Spring 源码的一 ...

  4. Android开发教程 - 使用Data Binding(五)数据绑定

    本系列目录 使用Data Binding(一)介绍 使用Data Binding(二)集成与配置 使用Data Binding(三)在Activity中的使用 使用Data Binding(四)在Fr ...

  5. Python-使用PyQT生成图形界面

    1.安装PyQT5以及QT Designer工具包 pip install PyQt5 pip install PyQt5-tools -i http://pypi.douban.com/simple ...

  6. 一些浩辰设置及它的bug?

    gcad执行快捷键有问题?尝试修改Setvar("autocompletemode", "19");原因是’输入按键时显示建议列表’这个项打钩了,这里首先捕捉的 ...

  7. ie6兼容性处理

    IE6下border-bottom不起作用? 在IE6下,border-bottom:1px solid #000 不起作用,但border:1px solid #000 其作用. (经过测试,对于b ...

  8. Smart/400开发上手3: 练习实践

    练习题 在2006年1月1日之前入职且在职的营销员,给予年资补贴2000元: 符合以上条件的,再按以下标准一次性发放职级补贴: 职级代码 简称 补偿金额 A1 AD 6000 B1 SBM 5000 ...

  9. Python小白学习之路(二十六)—【if __name__ =='__main__':】【用状态标识操作】

    规则一: 一个python文件中,只写一些可以运行的功能测试代码写在这句代码下面 if __name__ =='__main__': 在讲这边的时候,我不是很懂参考了一篇博客,地址如下:http:// ...

  10. Hi,我们再来聊一聊Java的单例吧(转)

    1. 前言 单例(Singleton)应该是开发者们最熟悉的设计模式了,并且好像也是最容易实现的——基本上每个开发者都能够随手写出——但是,真的是这样吗? 作为一个Java开发者,也许你觉得自己对单例 ...