一、由于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.升级成功!!

 

版权声明:本文为Dev0ps原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/Dev0ps/p/9629694.html