问题描述
RHEL 6.8 64位操作系统,由于使用低版本的SSL、SSH,导致漏洞问题。
Linux解决CVE-2015-2808、CVE-2016-8610漏洞
解决方案
openssl升级到1.0.2o版本,openssh升级到7.7p1版本
注意:以下安装时,请务必再开一个SSH窗口连接所需要升级的服务器,避免ssh升级失败后,无法连接服务器。
1、准备升级的tar包
openssl-1.0.2o.tar.gz
openssh-7.7p1.tar.gz
2、使用telnet服务连接升级
vim /etc/xinetd.d/telnet
disable = no
service xinetd restart
使用telnet服务登录,切换到root用户
su - root
关闭ssh服务
service sshd stop
3、编译安装openssl
#lixinfu add 先卸载旧版本的openssl
rpm -e --nodeps openssl
--------------------------------------
tar zxvf openssl-1.0.2o.tar.gz
cd openssl-1.0.2o
./config --prefix=/usr/ --openssldir=/usr/ shared
make && make install
#lixinfu add
#更新动态链接库数据
#首先确保/usr/lib64中没有了旧的链接库
cd /usr/lib64
ll libssl*
ll libcry*
如果有,删除掉libssl.so.10 libcrypto.so.10的软链接,移动他们软链接指向的动态链接库到备份目录
确保以下4个文件都存在,并且大小与源代码编译目录中的一致。
libssl.so -> libssl.so.1.0.0
libssl.so.1.0.0
libcrypto.so -> libcrypto.so.1.0.0
libcrypto.so.1.0.0
正式更新动态链接库
echo "/usr/lib64" >> /etc/ld.so.conf
ldconfig -v
#查看openssl版本。
openssl version
显示OpenSSL 1.0.2o 27 Mar 2018。
4、编译安装openssh
tar zxvf openssh-7.7p1.tar.gz
cd openssh-7.7p1
./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
#lixinfu add
cp -p contrib/redhat/sshd.init /etc/init.d/sshd
chmod +x /etc/init.d/sshd
cp sshd_config /etc/ssh/sshd_config
cp sshd /usr/sbin/sshd
cp ssh-keygen /usr/bin/ssh-keygen
cp sftp-server /usr/libexec/
echo "PermitRootLogin yes" >> /etc/ssh/sshd_config
注释掉/etc/ssh/sshd_config中两行
vim /etc/ssh/sshd_config
#GSSAPIAuthentication yes
#GSSAPICleanupCredentials yes
------------------------------------------------------------
完成后查看ssh版本。ssh -V查看
[root@localhost software]# ssh -V
OpenSSH_7.7p1, OpenSSL 1.0.2o 27 Mar 2018
5、重启ssh服务。
ssh -V
service sshd restart
备:请到官网连接上下载相应版本的安装包。
RHEL 6.8 64位操作系统,由于使用低版本的SSL、SSH,导致漏洞问题。
Linux解决CVE-2015-2808、CVE-2016-8610漏洞
解决方案
openssl升级到1.0.2o版本,openssh升级到7.7p1版本
注意:以下安装时,请务必再开一个SSH窗口连接所需要升级的服务器,避免ssh升级失败后,无法连接服务器。
1、准备升级的tar包
openssl-1.0.2o.tar.gz
openssh-7.7p1.tar.gz
2、使用telnet服务连接升级
vim /etc/xinetd.d/telnet
disable = no
service xinetd restart
使用telnet服务登录,切换到root用户
su - root
关闭ssh服务
service sshd stop
3、编译安装openssl
#lixinfu add 先卸载旧版本的openssl
rpm -e --nodeps openssl
--------------------------------------
tar zxvf openssl-1.0.2o.tar.gz
cd openssl-1.0.2o
./config --prefix=/usr/ --openssldir=/usr/ shared
make && make install
#lixinfu add
#更新动态链接库数据
#首先确保/usr/lib64中没有了旧的链接库
cd /usr/lib64
ll libssl*
ll libcry*
如果有,删除掉libssl.so.10 libcrypto.so.10的软链接,移动他们软链接指向的动态链接库到备份目录
确保以下4个文件都存在,并且大小与源代码编译目录中的一致。
libssl.so -> libssl.so.1.0.0
libssl.so.1.0.0
libcrypto.so -> libcrypto.so.1.0.0
libcrypto.so.1.0.0
正式更新动态链接库
echo "/usr/lib64" >> /etc/ld.so.conf
ldconfig -v
#查看openssl版本。
openssl version
显示OpenSSL 1.0.2o 27 Mar 2018。
4、编译安装openssh
tar zxvf openssh-7.7p1.tar.gz
cd openssh-7.7p1
./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
#lixinfu add
cp -p contrib/redhat/sshd.init /etc/init.d/sshd
chmod +x /etc/init.d/sshd
cp sshd_config /etc/ssh/sshd_config
cp sshd /usr/sbin/sshd
cp ssh-keygen /usr/bin/ssh-keygen
cp sftp-server /usr/libexec/
echo "PermitRootLogin yes" >> /etc/ssh/sshd_config
注释掉/etc/ssh/sshd_config中两行
vim /etc/ssh/sshd_config
#GSSAPIAuthentication yes
#GSSAPICleanupCredentials yes
------------------------------------------------------------
完成后查看ssh版本。ssh -V查看
[root@localhost software]# ssh -V
OpenSSH_7.7p1, OpenSSL 1.0.2o 27 Mar 2018
5、重启ssh服务。
ssh -V
service sshd restart
备:请到官网连接上下载相应版本的安装包。