探索OpenSSH版本升级

目录

一、OpenSSH是什么

1.1SSH协议有两个版本

1.2认证方式

二、为什么要升级OpenSSH

三、升级OpenSSH版本

3.1环境准备

3.2下载openssh地址

3.3对原来的openssh备份

3.3.1通过whereis ssh 找到openssh的文件

3.4安装telnet

3.4.1检查是否安装telent 

3.4.2允许root用telnet登陆

3.4.3启动telnet服务

3.5在线安装openssh

3.5.1下载高版本的ssh

3.5.2卸载旧版本的ssh

3.5.3安装依赖环境

3.6复制文件并修改权限

3.7设置开机自启动ssh服务

四、ssh与openssh的对比


一、OpenSSH是什么

OpenSSH 是 SSH (Secure SHell) 协议的免费开源实现SSH协议族可以用来进行远程控制, 或在计算机之间传送文件。而实现此功能的传统方式,如telnet(终端仿真协议)、 rcp ftp、 rlogin、rsh都是极为不安全的,并且会使用明文传送密码。OpenSSH提供了服务端后台程序和客户端工具,用来加密远程控件和文件传输过程中的数据,并由此来代替原来的类似服务。

1.1SSH协议有两个版本

  •  v1:基于CRC-32 做MAC,不安全;(一般用于实现主机认证)
  •  v2:基于协议协商选择双方都支持的最安全的MAC机制

       基于DH做密钥交换,基于RSA或DSA实现身份认证,从而实现无需输入账号密码
       客户端通过检查服务器端的主机秘钥来判断是否能够继续通信;

1.2认证方式

  • 基于口令的认证
  • 基于密钥的认证

二、为什么要升级OpenSSH

OpenSSH是用于安全远程登录和其他安全网络服务的软件包,对于大多数Linux发行版来说,它都是默认安装的。随着时间的推移,OpenSSH的新版本可能会引入安全性更新和改进,因此升级到最新版本是很有必要的。特别是对于CentOS 7,由于它已经停止了官方支持,因此及时升级系统组件变得更加重要。

三、升级OpenSSH版本

3.1环境准备

ssh -V
#查看当前版本
 
systemctl stop firewalld
setenforce 0
#关闭防火墙、防护

3.2下载openssh地址

pub-OpenBSD-OpenSSH-portable安装包下载_开源镜像站-阿里云 (aliyun.com)

https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/

3.3对原来的openssh备份

3.3.1通过whereis ssh 找到openssh的文件

由于openssh安装可能会造成ssh无法使用,所以要先安装telnet,保证可以使用telnet协议登录服务器

3.4安装telnet

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

3.4.1检查是否安装telent 

yum install -y xinetd
yum install -y telnet   #安装客户端
yum install -y telnet-server #安装服务端

或者
yum install telnet* -y

3.4.2允许root用telnet登陆

#增加pts配置;如果登录用户较多,需要更多的pts/*
vim /etc/securetty
在末尾添加:
pts/0
pts/1
pts/2
pts/3

 [root@localhost ~]# vim /etc/xinetd.d/telnet   如果没有则不修改
###################
disable = no #开启telnet服务功能,否则telnet启动后,23端口起不来

3.4.3启动telnet服务

systemctl enable xinetd
systemctl start xinetd
systemctl enable telnet.socket
systemctl start telnet.socket

启用 Telnet 服务的正确命令是 systemctl enable telnet.socket,这将在系统启动时自动启用 Telnet 套接字。请注意,Telnet 是一种不安全的远程登录协议,建议使用更安全的替代方案,如 SSH

3.5在线安装openssh

3.5.1下载高版本的ssh

wget https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-8.1p1.tar.gz

tar xf openssh-8.1p1.tar.gz -C /usr/local/src/
chown -R root.root /usr/local/src/openssh-8.1p1/

3.5.2卸载旧版本的ssh

service sshd stop
rpm -e `rpm -qa| grep openssh` --nodeps
cp -r /etc/ssh/ /etc/ssh_bak
rm -rf /etc/ssh/*

3.5.3安装依赖环境

​yum install -y gcc gcc-c++ glibc make autoconf openssl openssl-devel pam-devel pore-devel

yum install -y pam* zlib*

cd /usr/local/src/openssh-8.1p1/  切换目录
./configure --prefix=/usr --sysconfdir=/etc/ssh --with-zlib --with-md5-passwords --with-pam

make -j 4 && make install

3.6复制文件并修改权限

cp -a contrib/redhat/sshd.init /etc/init.d/sshd
chmod +x /etc/init.d/sshd 
echo "PermitRootLogin yes" > /etc/ssh/sshd_config

3.7设置开机自启动ssh服务

[root@zzzcentos3 openssh-8.1p1]#chkconfig --add sshd
[root@zzzcentos3 openssh-8.1p1]#
[root@zzzcentos3 openssh-8.1p1]#chkconfig sshd on
[root@zzzcentos3 openssh-8.1p1]#
[root@zzzcentos3 openssh-8.1p1]#service sshd start 
Starting sshd (via systemctl):                             [  确定  ]
[root@zzzcentos3 openssh-8.1p1]#
[root@zzzcentos3 openssh-8.1p1]#ssh -V
OpenSSH_8.1p1, OpenSSL 1.0.2k-fips  26 Jan 2017

四、ssh与openssh的对比

SSH(Secure Shell)是一种网络协议,用于在网络上安全地进行远程登录和执行命令。OpenSSH 是一个实现 SSH 协议的免费开源软件套件。以下是 SSH 和 OpenSSH 之间的比较:

  1. SSH

    • 定义:SSH 是 Secure Shell 的缩写,是一种网络协议,用于在网络上安全地进行远程登录和执行命令。
    • 功能:SSH 提供了加密的通信会话,可以在不安全的网络中安全地传输数据。
    • 特点:SSH 提供了身份验证、加密和数据完整性保护等功能,使远程登录和文件传输更加安全。
  2. OpenSSH

    • 定义:OpenSSH 是 SSH 协议的开源实现,包括了 SSH 客户端和服务器程序。
    • 功能:OpenSSH 提供了 SSH 协议的实现,允许用户在计算机之间建立安全的连接。
    • 特点:OpenSSH 是一个广泛使用的工具,用于远程管理和文件传输,同时支持多种加密算法和身份验证方法。

主要区别

  • SSH 是一种网络协议,用于安全远程登录和执行命令,而 OpenSSH 是 SSH 协议的具体实现。
  • SSH 是一个协议标准,而 OpenSSH 是一个软件套件,包括 SSH 客户端和服务器程序。

总的来说,SSH 是一种协议

而 OpenSSH 是实现该协议的软件套件,用于提供安全的远程登录和通信

  • 12
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值