当前位置: 首页 > news >正文

在 ubuntu 18.04 上使用源码升级 OpenSSH_7.6p1到 OpenSSH_9.3p1

1、检查系统已安装的当前 SSH 版本

使用命令 ssh -V 查看当前 ssh 版本,输出如下:

OpenSSH_7.6p1 Ubuntu-4ubuntu0.7, OpenSSL 1.0.2n  7 Dec 2017

2、安装依赖,依次执行以下命令

sudo apt update
sudo apt install build-essential zlib1g-dev libssl-dev

3、设置环境

为了创建一个合适的环境来安装 OpenSSH 服务,需要创建一个安装环境

sudo mkdir /var/lib/sshd
sudo chmod -R 700 /var/lib/sshd/
sudo chown -R root:sys /var/lib/sshd/

4、下载源码并安装

从任何可用的HTTP镜像下载OpenSSH 9.3 版本,或者使用wget命令直接在终端下载

下载源码到任意文件夹下:
wget -c https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.3p1.tar.gz

解压:
tar -xzf openssh-9.3p1.tar.gz

进入源码文件夹路径:
cd openssh-9.3p1/

安装时如果要启用PAMSELinux支持,需分别添加--with-pam--with-selinux选项,需要安装所有必需的头文件才能使它们正常工作

安装依赖:
sudo apt install libpam0g-dev libselinux1-dev libkrb5-dev

安装 ssh,依次执行以下三命令:

./configure --with-kerberos5 --with-md5-passwords --with-pam --with-selinux --with-privsep-path=/var/lib/sshd/ --sysconfdir=/etc/ssh
make
sudo make install

安装完成后,重启系统,否则远程连接将继续使用旧版本

5、检查新版本

本地查看

打开一个新终端并运行:
ssh -V
在这里插入图片描述

远程查看

检查远程计算机上OpenSSH 版本是否更改:

ssh -v user@ip

在输出信息中查找 Remote protocol version 行,如果显示旧版本号
在这里插入图片描述需复制新版本,操作如下:

cd /usr/sbin
mv sshd sshd.bak    # 备份旧版本的sshd
sudo cp /usr/local/sbin/sshd sshd     # 复制新版本sshd

再次使用远程查看版本命令(保险起见,建议复制后进行重启):

ssh -v suntoon@192.168.147.132

在这里插入图片描述版本已更新到9.3

各种 OpenSSH 配置文件位于:

  • ~/.ssh/* – 此目录存储用户特定的 ssh 客户端配置(ssh 别名)和密钥。
  • /etc/ssh/ssh_config – 该文件包含系统范围的 ssh 客户端配置。
  • /etc/ssh/sshd_config – 包含 sshd 服务配置。

6、远程连接

ssh <user>@<ip>
在这里插入图片描述

http://www.lryc.cn/news/130060.html

相关文章:

  • python中可以处理word文档的模块:docx模块
  • TikTok或将于8月底关闭半闭环、速卖通或将推出“半托管”模式
  • 《凤凰架构》第二章——访问远程服务
  • 【Diffusion】李宏毅2023机器学习Diffusion笔记
  • CloudEvents—云原生事件规范
  • 神经网络基础-神经网络补充概念-51-局部最优问题
  • 深度学习中,什么是batch-size?如何设置?
  • [保研/考研机试] KY26 10进制 VS 2进制 清华大学复试上机题 C++实现
  • JSP-学习笔记
  • Golang协程,通道详解
  • unity 之 Vector 数据类型
  • 私密数据采集:隧道爬虫IP技术的保密性能力探究
  • 使用git rebase 之后的如何恢复到原始状态
  • matlab相机标定知识整理
  • win11安装ubuntu 子系统安装过程及注意事项
  • torch.cat((A,B),dim=1)解析
  • apache配置安全证书https踩坑记录
  • SQL Server Express 自动备份方案
  • Docker资源控制
  • 微服务中间件-分布式缓存Redis
  • java面试强基(16)
  • Python可视化在量化交易中的应用(13)_Seaborn直方图
  • NOIP 2006 普及组 第二题 开心的金明
  • 「UG/NX」Block UI 指定点SpecifyPoint
  • Linux Shell如果ping失败就重启网卡(详解)
  • 每天一道leetcode:剑指 Offer 13. 机器人的运动范围(中等广度优先遍历剪枝)
  • TypeError: a bytes-like object is required, not ‘str‘
  • 题解 | #1005.List Reshape# 2023杭电暑期多校9
  • 会声会影2023旗舰版电脑端视频剪辑软件
  • 【linux基础(四)】对Linux权限的理解