升级OpenSSH7.2p1到OpenSSH7.6P1,升级openssl
2017-10-13 15:46
531 查看
缘由
OpenSSH 远程权限提升漏洞(CVE-2016-10010)OpenSSH do_setup_env函数权限提升漏洞(CVE-2015-8325)
OpenSSH auth_password函数拒绝服务漏洞(CVE-2016-6515)
OpenSSH 允许多次 KEXINIT 导致拒绝服务漏洞(CVE-2016-8858)
OpenSSH 远程代码执行漏洞(CVE-2016-10009)
OpenSSH 本地信息泄露漏洞(CVE-2016-10011)
OpenSSH 安全限制绕过漏洞(CVE-2016-10012)
OpenSSL SSLv2协议”Drown”漏洞(CVE-2016-0800)
OpenSSL “SSL-Death-Alert” 拒绝服务漏洞(CVE-2016-8610)
1、开通Telnet
Yum安装telnet-server 及 telnet服务即可yum install -y telnet-server* telnet
启用telnet服务
vi /etc/xinetd.d/telnet
将其中的 disable 字段的yes 改为no
> mv /etc/securetty /etc/securetty.old#此作用是允许root用户通过telnet登录,网上也有其它办法可以实现,也可以不修改,使用其它用户登录后再 su - root
> service xinetd restart#通过重启xinetd重启telnet服务
> chkconfig xinetd on#使xinetd服务开机自启动,避免升级过和中意外导致无法登入系统
最后我们需要测试一下telnet服务是否正常启动。
2、升级OpenSSL
注:openssh7.6p1依赖的openssl的版本为>1.0.1e 并且 < 1.1.0。我们当前安装的是1.0.2h上传openssl-1.0.2h.tar.gz到/usr/local/src/
> tar zxvf openssl-1.0.2h.tar.gz#解压
> cd openssl-1.0.2h
> ./config shared zlib#一定要加上shared 参数,要不在安装openssh的时候就无法找到
> make
> make install
备份原来的openssl
> mv /usr/bin/openssl /usr/bin/openssl.bak
> mv /usr/include/openssl /usr/include/openssl.bak
因为源码安装默认安装的位置是 /usr/local/ssl 需要将创建软链接到系统位置
> ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl
> ln -s /usr/local/ssl/include/openssl /usr/include/openssl
将openssl 的lib 库添加到系统
> echo "/usr/local/ssl/lib/" >> /etc/ld.so.conf
> ldconfig#使新添加的lib 被系统找到
查看openssl版本
> openssl version -a
至此opensll 已经成功升级到1.0.2h
3、升级OpenSSH
到目前为上发现在的openssh的漏洞都是openssh7.4以前的版本。我们当前升级的是openssh7.6p1上传openssh-7.6p1.tar.gz 到 /usr/local/src/
> tar zxvf openssh-7.6p1.tar.gz#解压
> cd openssh-7.6p1
> ./configure --prefix=/usr --sysconfdir=/etc/ssh --with-md5-passwords --with-pam --with-zlib --without-openssl-header-check --with-ssl-dir=/usr/local/ssl --with-privsep-path=/var/lib/sshd#需要指定openssl的安装路径
> make
> make install
> echo 'X11Forwarding yes' >> /etc/ssh/ssh_config#允许SSH的X转发
> echo 'PermitRootLogin yes' >> /etc/ssh/sshd_config#设置SSH允许root用户登录
> cp -p contrib/redhat/sshd.init /etc/init.d/sshd#复制SSH的启动脚本
> chmod +x /etc/init.d/sshd#添加执行权限
> chkconfig --add sshd#添加到系统服务
> chkconfig sshd on#开启sshd的开机运行
> service sshd restart#重启SSHD,重启时有可能会断开ssh的连接,所以重启前一定要确认telnet可以连通,如果不能确保,出问题你只能去机房喽。
至此openssh的升级算是完成
> ssh -V#可查看当前SSH的版本。
4、升级Nginx
升级openssl后依赖原来版本openssl的Nginx会无法使用,需要重新配置一下Nginx。5、关闭Telnet 及善后
> chkconfig xinetd off#关闭xinetd的开机启动
> service xinetd stop#关闭xinetd服务
相关文章推荐
- Redhat 6 升级 openssl-1.0.2m 、openssh-7.6p1 和 ntp-4.2.8p10
- openssl+openssh源码升级详细配置(Redhat)
- openssl、openssh升级
- RedHat 6编译升级OpenSSL、OpenSSH及NTP
- SuSe 11以编译安装的方式升级OpenSSH、OpenSSL及依赖问题解决
- openssh和openssl升级
- HP Unix openssl、openssh 升级
- openssl&&openssh平滑升级
- CentOS5.x用yum升级OpenSSH和OpenSSL
- openssl与openssh 升级
- 【原创】centos7.1升级openssh6.6p1至7.6p1版本
- 【新手实战】redhat 6.2 升级openSSH (配合安装GCC,升级openSSL)
- CentOS5.x下用YUM升级OpenSSH和OpenSSL
- CentOS 5.4 32位 OpenSSl OpenSSH升级过程.
- redhat7.2升级openssl、openssh
- 升级openssl和openssh
- openssl、openssh升级
- CentOS7.4升级OpenSSH7.6p1
- 同时升级openssl 1.0.1g和openssh-6.6p1
- [服务器安全]升级OpenSSH,OpenSSL,vsftp,关闭NTP服务