Linux 升级 openssh 方法步骤

一:OpenSSH 介绍

OpenSSH最初是作为OpenBSD系统项目的一部分而开发的,后面因为其强大的功能和安全性,就被开源出来供更广泛的操作系统使用;

OpenSSH如果需要升级到最新版本,因为没有提供对应的仓库源,从而不能使用仓库在线安装这种方式。所以只能通过下载源码编译安装的方式来进行。

OpenSSH官网:https://www.openssh.com/

二:升级 OpenSSH

1、下载源码包

openssh 的源码包分为两种类型:

  • 源码包不携带p后缀:只能用于OpenBSD这个Linux系统,例如:openssh-9.9.tar.gz;
  • 源码包会携带p后缀:可以用于非OpenBSD的操作系统,例如:openssh-9.9p1.tar.gz;

如果我们的操作系统不是OpenBSD,我们需要下载带p后缀的源码包; 链接:https://mirrors.aliyun.com/pub/OpenBSD/OpenSSH/portable/

在这里插入图片描述
在这里插入图片描述

2、查看当前安装位置

需要先查看当前已经安装的openssh客户端和服务端的安装位置;这样编译安装新版本openssh的时候,只需要将安装路径指定为对应的目录下即可。

这样的好处是其他的一些信息就不用再修改了,例如service文件。因为会默认将旧版本的openssh相关文件进行覆盖,从而替换为新版本openssh的相关文件;

可执行文件位置:/usr
在这里插入图片描述
配置文件位置:/etc/ssh
在这里插入图片描述

3、上传源码包

在这里插入图片描述

4、生成Makefile文件

因为我原来使用仓库安装openssh-serveropenssh-client后,可执行文件是存放在/usr下的,配置文件是存放在/etc/ssh下的,所以使用以下的参数就行了,其他的保持默认即可。

这里新版本的sshd和ssh、scp等会存放在/usr/sbin和/usr/bin目录下,和我以前ssh的安装路径是一样的,会将我原有的可执行文件进行覆盖。

默认情况下配置文件如果存在,是不会被覆盖的;还会继续使用以前的配置文件

./configure --prefix=/usr --sysconfdir=/etc/ssh

说明:

  • --prefix:指定openssh的程序存放路径,不指定默认就是 /usr/local;
  • --exec-prefix:指定可执行程序的存放位置,不指定默认就是PREFIX;
  • --sysconfdir:指定配置文件存放路径,如果该目录下有文件,不会覆盖;不指定默认在 PREFIX/etc
  • --sbindir:指定需要管理员权限才能执行的二进制文件路径,也就是sshd的位置,默认在EPREFIX/sbin
  • --bindir:指定普通用户都有权限执行的二进制文件路径,也就是ssh、scp等的位置,默认在EPREFIX/bin

5、编译并安装

make -j 4  && sudo make install

6、重启ssh服务

因为sshd这个可执行文件的位置是没有发生变化的。只是将旧的sshd替换为了新的sshd,所以service文件也不需要修改,直接重启service服务器,重新加载就可以了;

sudo systemctl restart ssh.service

7、检查版本信息

可以看到已经升级到了指定的新班本;

ssh -V

telnet 127.0.0.1 22

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一只小爪子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值