最近用低版本的OpenSSH(5.9p1版本) 的漏洞给系统留了个后门 , 可以劫持root密码或者给root开启后门密码 : 利用Openssh后门 劫持root密码
如果公司还在用CentOS6的系统 , 那肯定存在漏洞隐患
建议升级OpenSSH , 升级OpenSSH的操作并不复杂 ,但如果是线上环境 ,那么就需要谨慎操作
特别需要注意的是 如果是通过ssh远程连接服务器后进行的版本升级操作 ,万一升级失败了,则ssh就远程登录不上去了 当然 ,如果服务器安装了iDRAC远程管理卡就好说了,如果没有iDRAC远程管理卡,则需要提前开启telnet远程登录(允许root账号登录)或是到机房现场进行升级操作比较妥当
centos7默认的是OpenSSH_7.4p1版本,可以不用升级,只需升级centos6.9的openssh版本即可
OpenSSH_6.9 包括6.9在内和6.9之前的版本 , 都存在漏洞 , 登录被影响主机查看OpenSSH版本号,如在影响范围内,则对OpenSSH进行版本升级或更新
#!/bin/bash #关闭iptables防火墙和selinux /etc/init.d/iptables stop /bin/sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux /usr/sbin/setenforce 0 #备份ssh原来配置 cp -rf /etc/ssh /etc/ssh.bak #安装配置telnet,暂时允许root用户远程telnet,以防ssh升级后远程登录不了 echo "Y"|/usr/bin/yum install telnet-server /bin/sed -i 's/= yes/= no/g' /etc/xinetd.d/telnet /etc/init.d/xinetd start /etc/init.d/xinetd restart mv /etc/securetty /etc/securetty.bak #安装配置新版本openssh echo "Y"|/usr/bin/yum install -y gcc openssl-devel pam-devel rpm-build cd /usr/local/src /usr/bin/wget https://fastly.cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-7.8p1.tar.gz /bin/tar -xf openssh-7.8p1.tar.gz cd /usr/local/src/openssh-7.8p1 ./configure --prefix=/usr --sysconfdir=/etc/ssh --with-pam --with-zlib --with-md5-passwords --with-tcp-wrappers make -j 4 && make install /bin/sed -i '/^#PermitRootLogin/s/#PermitRootLogin yes/PermitRootLogin yes/' /etc/ssh/sshd_config /bin/sed -i 's_#PermitRootLogin yes_PermitRootLogin yes_g' /etc/ssh/sshd_config sed -i '/^GSSAPICleanupCredentials/s/GSSAPICleanupCredentials yes/#GSSAPICleanupCredentials yes/' /etc/ssh/sshd_config sed -i '/^GSSAPIAuthentication/s/GSSAPIAuthentication yes/#GSSAPIAuthentication yes/' /etc/ssh/sshd_config sed -i '/^GSSAPIAuthentication/s/GSSAPIAuthentication no/#GSSAPIAuthentication no/' /etc/ssh/sshd_config service sshd start service sshd restart /usr/bin/ssh -V # 关闭telnet远程登录 NUM=$(/usr/sbin/lsof -i:23|wc -l) if [ $NUM -ne 0 ];then mv /etc/securetty.bak /etc/securetty fi