当前位置:   article > 正文

升级OpenSSH版本(安装telnet远程管理主机)_ubuntu升级openssh

ubuntu升级openssh

一 OpenSSH是什么

OpenSSH 是 SSH (Secure SHell) 协议的免费开源实现。SSH协议族可以用来进行远程控制,

或在计算机之间传送文件。而实现此功能的传统方式,如telnet(终端仿真协议)、 rcp ftp、 rlogin、

rsh都是极为不安全的,并且会使用明文传送密码。OpenSSH提供了服务端后台程序和客户端工

具,用来加密远程控件和文件传输过程中的数据,并由此来代替原来的类似服务。

1 为什么要升级OpenSSH OpenSSH

是用于 安全 远程登录和其他安全 网络 服务的软件包,对于大多数Linux发行版来说,它都是默认

安装的。 随着时间的推移,OpenSSH的新版本可能会引入安全性更新和改进,因此升级到最新版

本是很有必要的。 特别是对于CentOS 7,由于它已经停止了官方支持,因此及时升级系统组件变

得更加重要。

2 SSH协议有两个版本:

        v1:基于CRC-32 做MAC,不安全; (一般用于实现主机认证)

        v2:基于协议协商选择双方都支持的最安全的MAC机制

            基于DH做密钥交换,基于RSA或DSA实现身份认证,从而实现无需输入账号密码

            客户端通过检查服务器端的主机秘钥来判断是否能够继续通信;

3 认证方式:

        1 基于口令的认证

        2 基于密钥的认证

为什么要使用OpenSSH:

    由于传统的telnet、rcp ftp等工具是明文传输数据的,对数据安全性存在很大的安全隐患,

OpenSSH可以对传输的数据进行加密从而大大提高了数据的安全性

二 升级OpenSSH至8.9版本

1 环境介绍

升级版本原因:OpenSSH有严重漏洞,因此要升级到最新版本

首先查看ssh版本

ssh -V  ##查看当前版本

关闭防火墙及核心防护

  1. systemctl stop firewalld
  2. setenforce 0

2、检查是否安装telnet

为了防止升级安装失败,无法使用ssh做远程连接,因此先安装telnet预防

  1. rpm -q telnet-server ##telnet服务端
  2. rpm -q telnet ##telnet客户端

3 安装telnet

  1. yum install telnet-server -y
  2. yum install telnet -y
  3. 或者
  4. yum install telnet* -y

4 启动telnet服务

  1. systemctl start telnet.socket
  2. systemctl enable telnet.socket
  3. systemctl status telnet.socket
  4. ss -natp |grep 23

5 安全文件关闭或者修改(否则root无法telnet登录)

默认情况下,系统是不允许root用户telnet远程登陆的,如果要使用root用户直接登录,需设置以下内容。或者可以添加一个可以登录的用户,登录并su到root用户

  1. mv /etc/securetty /etc/securetty.bak
  2. 或者
  3. echo 'pts/0' >>/etc/securetty
  4. echo 'pts/1' >>/etc/securetty

6 安装依赖包

  1. yum -y install zlib*
  2. yum -y install pam-*
  3. yum -y install gcc
  4. yum -y install openssl-devel

7 备份原有SSH服务版本

  1. mv /etc/ssh /etc/ssh.bak
  2. mv /usr/bin/ssh /usr/bin/ssh.bak
  3. mv /usr/sbin/sshd /usr/sbin/sshd.bak

8 下载OpenSSH升级所需安装包

官方下载地址:Index of /pub/OpenBSD/OpenSSH/portable/

./configure --sysconfdir=/etc/ssh

 

 

11 查看SSH命令的执行路径

which sshd

12 复制源码解压路径的开机启动脚本 

  1. cp /opt/openssh-8.9p1/contrib/redhat/sshd.init /etc/init.d/sshd
  2. ls /etc/init.d/

13 修改开机启动文件

  1. sed -i '25cSSHD=/usr/local/sbin/sshd' /etc/init.d/sshd
  2. sed -i '41c/usr/local/bin/ssh-keygen -A' /etc/init.d/sshd

14 修改配置文件,允许root用户通过ssh远程登录 

sed -i "/#PermitRootLogin prohibit-password/c\PermitRootLogin yes" /etc/ssh/sshd_config

15 复制文件到/usr/local/bin/下,增加执行权限

  1. cp /opt/openssh-8.9p1/contrib/ssh-copy-id /usr/local/bin/
  2. chmod +x /opt/openssh-8.9p1/contrib/ssh-copy-id

16 启动sshd服务并验证更新是否成功

  1. #启动
  2. service sshd start
  3. #查看版本号
  4. ssh -V

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/秋刀鱼在做梦/article/detail/853567?site
推荐阅读
相关标签
  

闽ICP备14008679号