一、由于openssh版本过低当用扫描软件检测时会出现以下漏洞:
二、解决方案是升级高版本,下面是升级的步凑。
1.安装telnet工具,因为升级过程中怕失败或者重启ssh失败。我们直接yun安装即可。
同时安装服务端和客户端命令: yum –y install telnet*
接下来,编辑配置文件vi /etc/xinetd.d/telnet
将disable的参数yes修改为no
然后重启telnet服务:service xinetd restart
2.测试通过telnet的方式输入账号密码正常登录
telnet localhost
输入用户名密码登陆成功,便测测成功了!
注意:如果无法telnet登陆的话:
vi /etc/pam.d/remote
注释掉:auth required pam_securetty.so
3.执行以下脚本,如果openssh-7.5p1.tar.gz下载慢需手动下载,放到openssh_update目录然后把wget这一行注释掉。
#!/bin/sh mkdir openssh_update cd openssh_update oldversion=`ssh -V 2>&1` echo "开始执行 OpenSSH 版本升级脚本" echo -e "当前OpenSSH版本为: \033[31m $oldversion \033[0m" echo "下载OpenSSH 7.5p1源代码......" { wget https://openbsd.hk/pub/OpenBSD/OpenSSH/portable/openssh-7.5p1.tar.gz tar -zxf openssh-7.5p1.tar.gz } &>> install.log echo "备份原版OpenSSH......" { mv /etc/ssh/ ./ssh.bak } &>> install.log echo "安装编译所需依赖,耗时较长,请耐心等待......" { yum -y install gcc zlib-devel openssl-devel } &>> install.log echo "配置并编译OpenSSH......" { cd openssh-7.5p1/ ./configure --prefix=/usr --sysconfdir=/etc/ssh make } &>> install.log echo "卸载旧版OpenSSH......" { rpm -e --nodeps `rpm -qa | grep openssh` } &>> install.log echo "开始安装......" { make install chmod 0600 /etc/ssh/ssh_host_rsa_key chmod 0600 /etc/ssh/ssh_host_ecdsa_key chmod 0600 /etc/ssh/ssh_host_ed25519_key make install } &>> install.log newversion=`ssh -V 2>&1` echo "开始执行 OpenSSH 版本升级脚本" echo -e "安装完成,当前SSH版本为: \033[32m $newversion \033[0m" echo "配置权限及启动项......" { cp contrib/redhat/sshd.init /etc/init.d/sshd chkconfig --add sshd sed -i '/#PermitRootLogin prohibit-password/c'"PermitRootLogin yes" /etc/ssh/sshd_config } &>> install.log echo "重启SSH服务......" service sshd restart echo "升级全部完成" echo -e "\033[31m 注意!!!为防止升级失败不能登录,请在使用其他客户端确认能正常登录SSH后再关闭本会话窗口! \033[0m"
4.通过其他机子telnet登录,启动ssh服务。
/etc/init.d/sshd start
5.升级成功!!