Linux 发行版中集成的 SSH 软件版本都比较老,存在着一些漏洞和安全隐患,需要升级 SSH 服务软件修补漏洞提升系统安全。
SSH:SSH 有许多标准,通常 Linux 中 ( Redhat, CentOS, SuSE 等 )使用的是开源版本的 OpenSSH
Openssh:openssh是由:OpenSSL (OpenSSL 可以为 OpenSSH 提供加密传输支持,是 OpenSSH 的一个中间件)版本和 Zlib (提供压缩传输支持)版本组成的,以达到最好的安全性。
注意:在开始升级之前一定要确认系统中已经安装了 GCC 编译器
确认当前系统的ssh版本:ssh -V
1.使用YUM安装:参考连接:https://www.imooc.com/article/17780?block_id=tuijian_wz
yum -y install gcc gcc-c++ kernel-devel //安装gcc、c++编译器以及内核文件
2.升级Zlib
下载最新版本的Zlib:Zlib 官方网站:http://www.zlib.net/
目前最新版本的 Zlib 是 zlib-1.2.11.tar.gz
cd /usr/local/src
wget -c http://www.zlib.net/zlib-1.2.11.tar.gz
3.编译安装Zlib
tar xzvf zlib-1.2.11.tar.gz
cd zlib-1.2.11/
./configure --prefix=/usr/local/zlib
make && make install
现在zlib 编译安装在 /usr/local/zilib中了
4.升级openssl
下载最新的openssl:参考连接:https://blog.csdn.net/shiyong1949/article/details/78212971?locationNum=10&fps=1
确认openssl版本:openssl version -a
OpenSSL 的官方网站:http://www.openssl.org
目前最新版的 OpenSSL 是openssl-fips-2.0.16.tar.gz
cd /usr/local/src
wget -c http://www.openssl.org/source/openssl-fips-2.0.16.tar.gz
查看gcc版本:gcc -v
编译安装opensll
tar xzvf openssl-fips-2.0.16.tar.gz
cd openssl-fips-2.0.16/
./config shared zlib --prefix=/usr/local/openssl
进行编译:make
make test (这一步很重要哦!是进行 SSL 加密协议的完整测试,如果出现错误就要一定先找出哪里的原因,否则一味继续可能导致最终 SSH 不能使用,后果很严重哦!)
make install
5.升级openssh
下载最新版本 OpenSSH
OpenSSH 的官方网站:http://www.openssh.com
最新版本为7.6p1
wget http://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-7.6p1.tar.gz
编译安装 OpenSSH
tar xzvf openssh-7.6p1.tar.gz
cd openssh-7.6p1/