##关于Linux 升级openssl与openssh
项目服务器需要申请域名,但是经过漏洞扫描后发现openssh高危漏洞,具体描述如下
- OpenSSH ‘schnorr.c’远程内存破坏漏洞(CVE-2014-1692)
- OpenSSH 安全漏洞(CVE-2016-1908)
- OpenSSH J-PAKE授权问题漏洞(CVE-2010-4478)
- OpenSSH 安全限制绕过漏洞(CVE-2016-10012)
- OpenSSH do_setup_env函数权限提升漏洞(CVE-2015-8325)
- OpenSSH auth_password函数拒绝服务漏洞(CVE-2016-6515)
- Openssh MaxAuthTries限制绕过漏洞(CVE-2015-5600)
- OpenSSH 远程代码执行漏洞(CVE-2016-10009)
- OpenSSH sshd mm_answer_pam_free_ctx释放后重利用漏洞(CVE-2015-6564)
- SSH 服务支持弱加密算法
- OpenSSH glob表达式拒绝服务漏洞(CVE-2010-4755)
- OpenSSH ‘x11_open_helper()’函数安全限制绕过漏洞(CVE-2015-5352)
- OpenSSH 用户枚举漏洞(CVE-2018-15473)【原理扫描】
- OpenSSH默认服务器配置拒绝服务漏洞(CVE-2010-5107)
- OpenSSH <=7.2p1 xauth命令注入漏洞(CVE-2016-3115)
- OpenSSH 远程权限提升漏洞(CVE-2016-10010)
- Portable OpenSSH ‘ssh-keysign’本地未授权访问漏洞
- [x] 1.上传软件包
openssl-1.0.2k.tar.gz openssh-7.4p1.tar.gz- [x] 2.安装telnet服务
1 #yum -y install telnet-server*
[x] 3.关闭防火墙,防止telnet无法连接
12345service iptables stop && chkconfig iptables off#vi /etc/xinetd.d/telnet 将其中disable字段的yes改为no以启用telnet服务#mv /etc/securetty /etc/securetty.old #允许root用户通过telnet登录#service xinetd start #启动telnet服务#chkconfig xinetd on #避免升级过程中服务器意外重启后无法远程登录系统[x] 4.安装编译所需工具包
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657-------升级openssl#############备份当前ssl##############find / -name openssl将上条命令找到的文件备份,命令格式如下#mv 文件名 文件名.old(根据实际结果操作)备份如下两个库文件,因系统内部分工具(如yum、wget等)依赖此库#cp /usr/lib64/libcrypto.so.10 /usr/lib64/libcrypto.so.10.old#cp /usr/lib64/libssl.so.10 /usr/lib64/libssl.so.10.old############卸载当前ssl###############rpm -qa | grep openssl ###查询当前ssl版本#rpm -e --nodeps 上条命令查询结果粘贴到此处############解压安装新版本ssl##########tar -zxvf openssl-1.0.2k.tar.gz#cd openssl-1.0.2k#./config --prefix=/usr --openssldir=/etc/ssl --shared zlib#make && make test && make install#openssl version -a ##查看是否升级成功--------升级openssh############备份当前ssh##############mv /etc/ssh /etc/ssh.old############卸载当前ssh##############rpm -qa | grep openssh(查询结果如下,不一定与实际环境相同)#openssh-clients-5.3p1-111.el6.x86_64#openssh-server-5.3p1-111.el6.x86_64#openssh-5.3p1-111.el6.x86_64#openssh-askpass-5.3p1-111.el6.x86_64卸载命令如下:#rpm -e --nodeps openssh-5.3p1-111.el6.x86_64#rpm -e --nodeps openssh-server-5.3p1-111.el6.x86_64#rpm -e --nodeps openssh-clients-5.3p1-111.el6.x86_64#rpm -e --nodeps openssh-askpass-5.3p1-111.el6.x86_64#rpm -qa | grep openssh ###查询是否成功############安装前环境配置#############install -v -m700 -d /var/lib/sshd#chown -v root:sys /var/lib/sshd############解压安装新版本ssh##########tar -zxvf openssh-7.4p1.tar.gz#cd openssh-7.4p1#./configure --prefix=/usr --sysconfdir=/etc/ssh --with-md5-passwords --with-pam --with-zlib --with-openssl-includes=/usr --with-privsep-path=/var/lib/sshd#make && make install####安装后环境配置(在编译目录执行)#####echo 'X11Forwarding yes' >> /etc/ssh/sshd_config#echo "PermitRootLogin yes" >> /etc/ssh/sshd_config#cp -p contrib/redhat/sshd.init /etc/init.d/sshd#chmod +x /etc/init.d/sshd#chkconfig --add sshd#chkconfig sshd on#chkconfig --list sshd#service sshd restart(如果失败可用telnet连接启动服务)###############安装成功后操作###############yum remove telnet-server* -y#mv /etc/securetty.old /etc/securetty#chkconfig xinetd off#service xinetd stop#service iptables start#chkconfig iptables on注意:一定要卸载telnet

