ubuntu下openssh升级
因客户漏扫扫描出来openssh及openssl存在漏洞,现升级为官方最新版

这里选择编译安装 去官网下载:
openssl-1.0.2o.tar.gz
openssh7.7.1
zlib-1.2.1 wget https://www.openssl.org/source/openssl-1.0.2o.tar.gz
wget https://fastly.cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-7.7p1.tar.gz
wget http://www.zlib.net/zlib-1.2.11.tar.gz
1.安装zlib
tar xf zlib-1.2.11.tar.gz
cd zlib-1.2.11
./configure --prefix=/usr/local/zlib
make
make install
#这里有一个报错:
# 报错: c_zlib.c:25:19: fatal error: zlib.h: No such file or directory
# zlib标准安装指导:
# /usr/local/src/zlib-1.2.11 # 构建静态库
./configure
make test
make install
# 构建共享库
make clean
./configure --shared
make test
2.升级openssl
tar xf openssl-1.0.2o.tar.gz
cd openssl-1.0.2o
./config shared zlib #一定要加上shared 参数,要不在安装openssh的时候就无法找到
make
make install
# 备份原来的openssl
mv /usr/bin/openssl /usr/bin/openssl.bak
mv /usr/include/openssl /usr/include/openssl.bak # 因为源码安装默认安装的位置是 /usr/local/ssl 需要将创建软链接到系统位置
ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl
ln -s /usr/local/ssl/include/openssl /usr/i
提示:在这里分享一个遇到的的报错大坑,导致之后安装openssh的时候make install一直报错如下:
OpenSSL version mismatch. Built against 1000105f, you have 10001060
/etc/ld.so.conf里面是这样写的(不知道什么原因):
cat /etc/id.so.conf
include id.so.conf.d/*conf
之前添加lib库的命令是这样的: echo "/usr/local/ssl/lib/" >> /etc/ld.so.conf
后来修改为:echo "/usr/local/ssl/lib" > /etc/ld.so.conf.d/openssl.conf
3.升级openssh
# 到目前为上发现在的openssh的漏洞都是openssh7.4以前的版本。我们当前升级的是openssh7.7p1 # 备份原openssh文件
mv /etc/init.d/ssh /etc/init.d/ssh.old
cp -r /etc/ssh /etc/ssh.old # 卸载原openssh
apt-get remove openssh-client openssh-server
tar xf openssh-7.7p1.tar.gz
cd openssh-7.7p1
./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 #需要指定openssl的安装路径 ---------------------------------报错-------------------------------------------
# 报错 checking whether OpenSSL's PRNG is internally seeded... yes
# configure: error: PAM headers not found
# 解决:ubuntu: apt-get install libpam0g-dev centos: yum -y install pam-devel
-------------------------------------------------------------------------------- make
make install
---------------------------------报错-------------------------------------------------------------------
# 报错: Privilege separation user sshd does not exist
vim /etc/passwd
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
# 注册名:口令:用户标识号:组标识号:用户名:用户主目录:命令解释程序
# /etc/passwd文件是Linux/UNIX安全的关键文件之一.该文件用于用户登录时校验 用户的口令,当然应当仅对root可写.
--------------------------------------------------------------------------------------------------------- #可查看当前SSH的版本。
ssh -V
#root@oezn121j8Z:~# ssh -V
#OpenSSH_7.7p1, OpenSSL 1.0.2o 27 Mar 2018
到此升级工作完成
如果重启没有
/etc/init.d/ssh
则执行
mv /etc/init.d/ssh.old
/etc/init.d/ssh
ubuntu下openssh升级的更多相关文章
- python3.6和pip3:Ubuntu下安装升级与踩坑之路
本文以Ubuntu16.x系统为例,演示如何安装python3.6和相应环境.安装Python3的机器必须要能访问外网才能进行如下操作! 1. 安装方式 在Ubuntu下安装python有两种方式: ...
- centos7生产环境下openssh升级
由于生产环境ssh版本太低,导致使用安全软件扫描时提示系统处于异常不安全的状态,主要原因是ssh漏洞.推荐通过升级ssh版本修复漏洞 因为是生产环境,所以有很多问题需要注意.为了保险起见,在生产环境下 ...
- UBUNTU 下如何升级 gcc, g++
正如大家所知道的GCC并不支持"make uninstall". 一种推荐安装方式就是把GCC 安装在你自己指定的一个路径,当你不须要某个GCC版本号的时候你仅仅须要移除相应版本号 ...
- CentOS 6.4下OpenSSH升级到6.7操作
一.升级前准备 1.下载openssh-6.7p1.tar.gz: cd /usr/local/src/wget http://ftp.openbsd.org/pub/OpenBSD/OpenSSH/ ...
- ubuntu下安装/升级软件
参考博客:https://blog.csdn.net/yjk13703623757/article/details/78945576 1.查看软件所有来源 ①.使用apt-cache madison列 ...
- 实际应用脚本备份1——Ubuntu下应用升级脚本与执行方法
程序自动更新脚本,命名为makefile: build:run run: killall java /webapps/‘应用目录名’/ /webapps/ ‘应用目录名’/ cd /opt/apach ...
- ubuntu下升级R版本
ubuntu下升级R版本 在测试<机器学习 实用案例解析>一书的邮件分类代码时,windows系统下rstudio中无法读取特殊字符,在ubuntu下可以.在ubuntu虚拟机下安装t ...
- ubuntu下升级网卡驱动
ubuntu下升级网卡驱动 无线局域网环境下,有个笔记本儿的无线经常断,而其它的终端都好好的,唯独它不行.所以想到检查和更新下无线网卡的驱动看看.以下是操作流程,记录一下. 阅读说明:##为标签, / ...
- ubuntu下nodejs和npm的安装及升级
ubuntu 下 nodejs 和 npm 的安装及升级 参考:https://segmentfault.com/a/1190000007542620 一:ubuntu下安装 node 和 npm命令 ...
随机推荐
- nvidia-smi命令输出详解
nvidia-smi命令输出如下: +-----------------------------------------------------------------------------+ | ...
- 对指针和引用的理解(c++)
1.指针 typedef说明一种新类型名,来代替已有类型名. a.案例:typedef char* String_t和#define String_d char *这两句在使用上的区别? 1)前者声明 ...
- 9款国内外垂直领域的在线作图工具:那些可以替代Visio的应用!【转】
http://www.csdn.net/article/2015-02-12/2823939 摘要:现在越来越多的创业公司都希望提升办公的效率,今天介绍的几款也能提升办公效率,不过它们都属于垂直领域的 ...
- [Javascript] Multiply Two Arrays over a Function in JavaScript
Just like the State ADT an Array is also an Applicative Functor. That means we can do the same trick ...
- VS2017环境下安装AO10.2的方法
软件版本 Visual Studio的全称.简称及版本号对应关系为: Microsoft Visual Studio 2002 VS2002 VC7.0 Microsoft Visual Studio ...
- Spring Core Programming(Spring核心编程) - AOP Concepts(AOP基本概念)
1. What is aspect-oriented programming?(什么是面向切面编程?) Aspects help to modularize cross-cutting concern ...
- Mac NVM 配置
1.NVM 简介 NVM(node version manager)是一个可以让你在同一台机器上安装和切换不同版本 node 的工具. GitHub 地址 2.NVM 环境配置 2.1 安装 NVM ...
- 浏览器神器--vimium
自从学会了正确的坐姿,坐在电脑一整天腰也不酸了.背也不痛了,精神倍棒吃嘛嘛香 zuomeng.png 但奈何使用鼠标久了,手腕.肩膀依旧疼痛.偶尔逛知乎,看到有人推荐chrome浏览器的vimiu ...
- 构建基于Suricata+Splunk的IDS入侵检测系统
一.什么是IDS和IPS? IDS(Intrusion Detection Systems):入侵检测系统,是一种网络安全设备或应用软件,可以依照一定的安全策略,对网络.系统的运行状况进行监视,尽可能 ...
- 面试杂谈之我的实习求职之路(7个offer)
现在是5月11号,刚从北京到家,总算也可以歇歇了,最近一段时间真是忙于奔命的感觉,也确实体会到了找工作的艰辛,总而言之,求职之路,如人饮水,冷暖自知. 我想把这段时间找工作的体验和经历分享出来告诉大家 ...