实验:CentOS 7 编译安装最新版 OpenSSH 9.4p1

简介: CentOS7 升级安装 OpenSSH 9.4p1 OpenSSL 3.0.10

实验环境

  • CentOS 7.9
  • OpenSSH 9.4p1
  • OpenSSL 3.0.10

实验需求

为我的 CentOS7.9 虚拟机编译安装最新 OpenSSH 版本。

升级前的 OpenSSH 版本:

[root@localhost ~]# ssh -V
OpenSSH_7.4p1, OpenSSL 1.0.2k-fips  26 Jan 2017

升级后的 OpenSSH 版本:

[root@localhost build-rpms]# ssh -V
OpenSSH_9.4p1, OpenSSL 3.0.10 1 Aug 2023

实验解法

1、安装编译环境

yum groupinstall -y "Development Tools"

yum install -y imake rpm-build pam-devel krb5-devel zlib-devel libXt-devel libX11-devel gtk2-devel perl-IPC-Cmd

当输出 Complete! 后,说明安装已经完成。

2、克隆 OpenSSH 编译 rpm 包项目

git clone https://github.com/ling218/openssh-rpms

由于国内网络问题,多尝试几遍 clone

3、编译 OpenSSH

# 切换到打包rpm项目目录下
cd openssh-rpms

# 执行脚本,下载需要编译安装的源码
./pullsrc.sh

# 执行脚本,开始编译
./compile.sh

# 查看打包好的 rpm 包
ls -l el7/RPMS/x86_64/

4、当前服务器升级 OpenSSH

# 本机升级OpenSSH版本
rpm -Uvh el7/RPMS/x86_64/*.rpm

# 删除本机密钥(该操作一定要做)
rm -rf /etc/ssh/ssh_host_*

# 重启sshd服务
systemctl restart sshd

# 查看sshd服务运行状况
systemctl status sshd

# 查看升级后的SSH版本
ssh -V

# 把生成的 rpm 安装包打包
cd el7/RPMS/x86_64
tar -zcvf openssh9.4p1_el7_rpm.tar.gz *.rpm

5、其他服务器升级 OpenSSH

上传 openssh9.4p1_el7_rpm.tar.gz 到其他服务器,操作步骤略

其他服务器上升级 OpenSSH 操作步骤如下:

tar -zxvf openssh9.4p1_el7_rpm.tar.gz
rpm -Uvh *.rpm
rm -rf /etc/ssh/ssh_host_*
systemctl restart sshd

6、可能遇到的情况

问题现象:

终端通过 SSH 连接服务器时提示连接超时

PS C:\Users\Xiaohui> ssh root@192.168.91.148
ssh: connect to host 192.168.91.148 port 22: Connection timed out

解决方法:

找到 C:\Users\用户名\.ssh 目录, 使用记事本的方式打开 known_hosts 文件,把文件内容全部删除。重新尝试登陆服务器,问题解决。

目录
相关文章
|
Linux 数据库管理 Python
CentOS7编译安装Python3.10(含OpenSSL1.1.1安装),创建虚拟环境,运行Django项目(含sqlite版本报错)
CentOS7编译安装Python3.10(含OpenSSL1.1.1安装),创建虚拟环境,运行Django项目(含sqlite版本报错)
1597 4
|
6月前
|
Linux 编译器 开发工具
在CentOS上编译安装TinyXml2
以上就是在CentOS上编译安装TinyXml2的步骤。这个过程可能看起来有些复杂,但是只要你按照步骤一步步来,应该不会有太大问题。如果在过程中遇到任何问题,你可以查阅相关的文档,或者在网上搜索解决方案。记住,编程就是一个不断学习和解决问题的过程,不要因为遇到困难就放弃。
144 27
|
6月前
|
Linux 开发工具 C语言
在CentOS系统中编译安装TinyXml2的方法
以上就是在CentOS系统中编译安装TinyXml2的方法。这个过程可能会有些复杂,但只要你按照上面的步骤一步一步来,你应该能够成功地完成这个任务。如果你在这个过程中遇到任何问题,你可以在网上搜索相关的资料,或者在相关的论坛上寻求帮助。希望这个指南能够帮助你成功地在你的CentOS系统中编译安装TinyXml2。
156 22
|
7月前
|
Linux Python
centos 编译安装 python 和 openssl
centos 编译安装 python 和 openssl
356 2
|
10月前
|
运维 监控 安全
CentOS 7系统 OpenSSH和OpenSSL版本升级指南
本文详细介绍如何在CentOS 7系统上升级OpenSSH和OpenSSL至最新稳定版本(OpenSSH 9.6p1和OpenSSL 1.1.1w),解决多个已知安全漏洞(如CVE-2023-51767等)。涵盖环境说明、现存漏洞、升级准备、具体步骤及故障排查,确保服务器安全。建议先在测试环境验证,再应用于生产环境。
2952 7
|
11月前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。同时,文章还对比了编译源码安装与使用 RPM 包安装的优缺点,帮助读者根据需求选择最合适的方法。通过具体案例,展示了编译源码安装的灵活性和定制性。
871 2
|
12月前
|
安全 Linux 编译器
Centos 7.9如何使用源码编译安装curl最新版本
通过上述步骤,您就能在CentOS 7.9上成功地从源代码编译并安装curl的最新版本。这种方法不仅提供了灵活性,允许您定制编译选项,还确保了软件的最新功能和安全更新得到应用。
636 1
|
Linux 开发工具 C语言
centos7编译安装python3
centos7编译安装python3
|
分布式计算 Java Hadoop
centos7编译安装Hadoop3
centos7编译安装Hadoop3
|
Linux 网络安全
CentOS7更新OpenSSH
CentOS7更新OpenSSH
465 5