漏洞的名称为Portable OpenSSH GSSAPI远程代码执行漏洞(CVE-2006-5051)及OpenSSH J-PAKE授权问题漏洞(CVE-2010-4478),厂家给出的解决方案很笼统。经过各方查找资料,大致的解决方案是升级到高版本的openssh,目前最新版本是openssh 6.7p1. 

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

    可以根据自己的需要选择下载升级,其实没别要升级到最新版本,一般都是选择目前较新且稳定的版本,今天的文章里我们以最新的openssh 6.7p1为例。由于目前服务器都处于生产环境中,基于一切操作安全为重的思想,稳当期间准备好telnet,以防止ssh更新出现问题,不能远程连接上服务器,自己跑现场可是比较悲催的.....

  下面看更新步骤

一.安装开启telnet服务

yum install telnet-* -y
#vi /etc/xinetd.d/telnet 把yes改为no
# /etc/init.d/xinetd restart

注1:如出现 "Unencrypted connection refused. Goodbye."错误提示可能是启动了“ekrb5-telnet”服务,解决方法:将/etc/xinetd.d/ekrb5-telnet里面的disable改成=yes,再重启xinetd服务service xinetd restart就OK了!

注2:linux的telnet默认是不允许root用户直接登陆的,可以选择用户账号登陆,跳转到root权限。也可以修改配置文件,这里笔者不推荐,还是安全原因。

二.安装更新openssh

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

wget -S http://mirror.internode.on.net/pub/OpenBSD/OpenSSH/portable/openssh-6.7p1.tar.gz


现在高版本OPENSSH安装程序,现在最高版本是6.7p1

tar xvf openssh-6.7p1.tar.gz 
cd  openssh-6.7p1
./configure --prefix=/usr --sysconfdir=/etc/ssh

注:编译源码,注意编译路径, OPENSSH安装在原来的路径下,这样后面安装完成后就不用再次copy SSHD服务到/etc/init.d/。

make 
mv /etc/ssh/* /etc/sshbak/

安装在原路径下,需要把原来的配置文件移走,不然make install 可能会报错

make install 
cp /etc/ssh/sshd_config /etc/ssh/sshd_config_bak
cp /etc/sshbak/sshd_config /etc/ssh/sshd_config
vim /etc/ssh/sshd_config
修改 Subsystem  sftp  /usr/local/libexec/sftp-server
/etc/init.d/sshd restart

这里注意安全,如果你前面编译报错了,还强制安装,SSHD服务可能就起不来。

chkconfig --add sshd 
chkconfig sshd on


使用ssh -V 命令查看一下 

 ssh -V

OpenSSH_6.7p1, OpenSSL 1.0.1e-fips 11 Feb 2013

已经成功升级至6.7版本!