CentOS7.6 升级 openssh 升级为 8.0
CentOS7.6升级SSH升级为8.0
近期对生产服务器进行了渗透及安全测试,检查出ssh存中危漏洞需要修复,该漏洞需要升级 openssh
到 8
版本
漏洞描述:
国家漏洞库编号:CNNVD-201808-902
CNCVE编号:CNCVE-201815919
CVE编号:CVE-2018-15919
漏洞描述:OpenSSH(OpenBSD Secure Shell)是OpenBSD计划组所维护的一套用于安全访问远程计算机的连接工具。该工具是SSH协议的开源实现,支持对所有的传输进行加密,可有效阻止窃听、连接劫持以及其他网络级的攻击。OpenSSH 7.8及之前版本中的auth-gss2.c文件存在安全漏洞。远程攻击者可利用该漏洞检测其指定的用户是否存在。
Centos 升级openssh 8.0
1、上传安装包之安装目录
2、查看现有的 ssh
版本
# ssh -V
OpenSSH_7.4p1, OpenSSL 1.0.2k-fips 26 Jan 2017
3、避免 openssh
失败无法登陆,安装 telnet
# yum install -y telnet-server xinetd
# systemctl enable xinetd.service
# systemctl enable telnet.socket
# systemctl start telnet.socket
# systemctl start xinetd
4、修改 /etc/pam.d/login
这个文件,注释如下一行
# cp /etc/pam.d/login /etc/pam.d/login.bak
# vim /etc/pam.d/login
# auth [user_unknown=ignore success=ok ignore=ignore default=bad] pam_securetty.so
5、编辑 /etc/securetty
文件,增加如下几行
# cp /etc/securetty /etc/securetty.bak
# vim /etc/securetty
pts/0
pts/1
pts/2
pts/3
6、 telnet
使用 root
用户登录系统。
# telnet IP
用户名:root
密码:root
7、卸载之前的版本
# yum remove openssh*
8、卸载之后,安装 openssh8.0
版本
# rpm -Uvh openssh-8.0p1-1.el7.x86_64.rpm
# rpm -Uvh openssh-clients-8.0p1-1.el7.x86_64.rpm
# rpm -Uvh openssh-debuginfo-8.0p1-1.el7.x86_64.rpm
# rpm -Uvh openssh-server-8.0p1-1.el7.x86_64.rpm
## 或者
# yum install ./openssh-*
9、启动SSH服务
# systemctl status sshd
# systemctl start sshd
10、添加到开启自启动
# chmod +x /etc/init.d/sshd
# chkconfig --add sshd
# chkconfig sshd on
# chkconfig --list sshd
11、关闭 telnet
# systemctl stop telnet.socket
# systemctl disable telnet.socket
# systemctl stop xinetd.service
# systemctl disable xinetd.service
# yum remove -y telnet-server xinetd
注意:开启telnet的root远程登录极度不安全,账号密码都是明文传输,尤其在公网,所以一般只限于在某些情况下内网中ssh无法使用时,临时调测,使用完后,将相关配置复原,彻底关闭telnet服务!
12、回退或删除 4,5
的操作。
# cp /etc/pam.d/login.bak /etc/pam.d/login
# cp /etc/securetty.bak /etc/securetty
13、查看当前 openssh
的版本
# ssh -V
OpenSSH_8.0p1, OpenSSL 1.0.2k-fips 26 Jan 2017