近期公司应用需要用到https协议;Centos6.5自带的的openssl 1.0.1e版本存在名为“心脏出血”的漏洞.
环境:CentOS6.5_x86_64
准备相关的包
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/
1、升级zlib
tar zxvf zlib-1.2.8.tar.gz
cd zlib-1.2.8
./configure
echo $?
make && make install
2、更新pam的rpm包。不然configure openssh的时候会报错
yum install pam-1.1.1-13.el6.x86_64.rpm pam-devel-1.1.1-13.el6.x86_64.rpm
注意:以下安装时,请务必再开一个SSH窗口连接所需要升级的服务器,避免ssh升级失败后,无法连接服务器。
3、编译安装openssl
tar zxvf openssl-1.0.2j.tar.gz
cd openssl-1.0.2j
./config --prefix=/usr/ --openssldir=/usr/ shared
make && make install
====以下6行不操作,有些文章说明要做这些操作,但是我升级的时候没有这个。
mv /usr/bin/openssl /usr/bin/openssl.OFF
mv /usr/include/openssl /usr/include/openssl.OFF
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版本。openssl version显示OpenSSL 1.0.2j 26 Sep 2016。
4、编译安装openssh
tar zxvf openssh-7.3p1.tar.gz
cd openssh-7.3p1
./configure --with-zlib --with-ssl-dir --with-pam --bindir=/usr/bin --sbindir=/usr/sbin --sysconfdir=/etc/ssh
如果提示configure: error: PAM headers not found,可能是第2步没执行,需要安装pam-devel。
make && make install //完成后查看ssh版本。ssh -V查看
[root@master ~]# ssh -V
OpenSSH_7.3p1, OpenSSL 1.0.2j 26 Sep 2016
5、重启ssh服务。
service sshd restart
参考文章
http://zjwsk.blog.163.com/blog/static/598306132014313112351/
http://www.cnblogs.com/xiegj/p/5669800.html
本文出自 “lmlinux” 博客,请务必保留此出处http://1121914451.blog.51cto.com/11002746/1871070
原文地址:http://1121914451.blog.51cto.com/11002746/1871070