Linux 升级Openssh版本(详细可用)

偏执的太偏执、 2023-10-10 11:33 125阅读 0赞

前言:服务器漏洞,需要升级openssh版本到7.8,然后就开始百度,网上各种版本各种copy,来回折腾的我不轻,最后升级完成,所以记录一下自己的升级成功的步骤,以防以后使用。

文章目录

    • 一、下载openssh
    • 二、解压压缩包
    • 三、删除原有的ssh相关文件
    • 四、安装编译新的ssh
    • 五、查看Openssh版本
    • 六、openSSH升级后无法远程问题解决
    • 七、openSSH升级后root(默认账户)无法远程登录问题解决(Access denied)

一、下载openssh

  1. 直接通过ssh连接目标主机进行下载(建议将压缩包下载到 /opt 目录下):

    [root@sd-vm-0001252 opt]# wget wget https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-7.8p1.tar.gz

如果在执行wget后指令提示 command not found,是因为目标机上没有安装wget指令;

wget指令安装

  1. yum -y install wget

安装成功提示:
在这里插入图片描述

  1. 或者是直接在windows上下载openssh再上传到目标主机上:
    下载地址:http://www.openssh.com/releasenotes.html
    在这里插入图片描述
  2. 下载完成后:
    在这里插入图片描述

二、解压压缩包

  1. tar xvf openssh-7.8p1.tar.gz

解压完成拿到压缩包:
在这里插入图片描述

三、删除原有的ssh相关文件

  1. 先卸载openssh服务,注意!注意!注意!卸载完成服务器ssh服务就会停掉,此时客户端连接的不能断开,在ssh没安装好之前也不可重启ssh服务和服务器,否则断开之后将无法进行远程连接

    yum remove openssh –y

  2. 手动删除原有ssh相关文件

    rm -rf /etc/ssh/*

四、安装编译新的ssh

  1. 进入到自己解压好的ssh目录下(根据自己实际情况,每个人解压的目录可能不一样,这里解压后的目录是/opt/openssh-7.8p1/):

    cd /opt/openssh-7.8p1/

  2. 安装编译:

    ./configure —prefix=/usr/ —sysconfdir=/etc/ssh —with-openssl-includes=/usr/local/ssl/include —with-ssl-dir=/usr/local/ssl —with-zlib —with-md5-passwords —with-pam && make && make install

注意:如果在安装编译过程中断,且提示:configure: error: PAM headers not found,就需要先手动安装一下PAM

在这里插入图片描述
手动安装PAM:

  1. yum -y install pam-devel

安装完成PAM
在这里插入图片描述
Openssh安装完成图示:
在这里插入图片描述
Openssh安装完成后在/openssh-7.8p1目录下执行如下命令:

  1. [root@sd-vm-0001252 openssh-7.8p1] cp -a contrib/redhat/sshd.init /etc/init.d/sshd
  2. [root@sd-vm-0001252 openssh-7.8p1] cp -a contrib/redhat/sshd.pam /etc/pam.d/sshd.pam
  3. [root@sd-vm-0001252 openssh-7.8p1] chmod +x /etc/init.d/sshd
  4. [root@sd-vm-0001252 openssh-7.8p1] chkconfig --add sshd
  5. [root@sd-vm-0001252 openssh-7.8p1] chkconfig sshd on
  6. [root@sd-vm-0001252 openssh-7.8p1] service sshd restart

五、查看Openssh版本

  1. ssh -V

在这里插入图片描述

六、openSSH升级后无法远程问题解决

进入到目录 /etc/ssh/sshd_config 将 PasswordAuthentication yes 注释打开,启用公钥身份验证;

  1. vi /etc/ssh/sshd_config
  • 图示:
    在这里插入图片描述

然后重启ssh服务:

  1. service sshd restart

或者

  1. /etc/init.d/sshd restart

七、openSSH升级后root(默认账户)无法远程登录问题解决(Access denied)

root(默认账户)一般情况下是不允许直接通过远程进行密码登录访问的(测试时安全扫描会有高危漏洞产生),所以默认情况下是禁止的,如果有需要的话,可以手动开启(不建议开启);个人建议如果需要使用到root用户,可以使用普通账号先连接服务器,然后su命令切换到root用户进行操作。

具体操作步骤:

修改SSH服务配置文件sshd_config来解决这个问题。文件路径为: /etc/ssh/sshd_config

  1. vi /etc/ssh/sshd_config
  • 图示:
    在这里插入图片描述

  • 如果觉得对你有帮助,就顺手给个赞吧。感谢!

发表评论

表情:
评论列表 (有 0 条评论,125人围观)

还没有评论,来说两句吧...

相关阅读

    相关 openssh升级

    为保障在升级openssh过程中出现网络中断导致连接不上服务器,建议先安装telnet服务,当网络中断时,可通过telnet远程到服务器。 一、安装telnet服务...