centos7.9版本升级ssh OpenSSH 9.8p1 源码 OpenSSL 1.1.1w 源码包以及安装升级回滚文档

此包专为 **Anolis OS 7.9 x86_64** 构建,也兼容 CentOS 7 / EulerOS 2.0 SP2 等基于 RHEL 7 的系统

编译依赖 RPM 来自 CentOS 7 vault 镜像,与 Anolis OS 7.9 二进制兼容

OpenSSL 安装到独立路径,不影响系统原有 OpenSSL

如目标系统已有部分编译工具,脚本会跳过已安装的包

OpenSSH 9.8p1 离线安装包 (Anolis OS 7.9)

包内容

  • `sources/openssh-9.8p1.tar.gz` - OpenSSH 9.8p1 源码

  • `sources/openssl-1.1.1w.tar.gz` - OpenSSL 1.1.1w 源码

  • `build-deps/*.rpm` - 编译依赖 RPM 包 (199 个,来自 CentOS 7 vault,与 Anolis OS 7.9 兼容)

  • `install-offline.sh` - 离线安装脚本

安装方式

```bash

1. 将打包文件传到目标 Anolis OS 7.9 系统

scp openssh-9.8p1-offline-bundle.tar.gz root@<target>:/root/

2. 在目标系统上解压并执行

ssh root@<target>

cd /root

tar -xzf openssh-9.8p1-offline-bundle.tar.gz

cd openssh-9.8p1-offline-bundle

bash install-offline.sh

```

脚本执行流程

  1. **安装编译依赖** - 从 `build-deps/` 本地安装 gcc/make/autoconf/zlib-devel/pam-devel/krb5-devel/libedit-devel/perl 等

  2. **编译 OpenSSL 1.1.1w** - 安装到 `/usr/local/openssl-1.1`(不覆盖系统 openssl)

  3. **编译 OpenSSH 9.8p1** - 链接到新 OpenSSL,使用 rpath 确保运行时找到正确的库

  4. **备份当前 ssh** - 备份 `/etc/ssh`、sshd 二进制、PAM 配置、systemd service 到 `backup/`

  5. **安装并重启 sshd** - 测试配置后重启服务

安全说明

  • **不会断连**:脚本在前台运行,但 sshd 重启时 SSH 会话可能短暂中断,几秒后可重连

  • **自动备份**:所有原文件备份到 `backup/` 目录,带时间戳

  • **回滚方法**(见脚本输出):

```bash

cp backup/sshd.bin.* /usr/sbin/sshd

cp backup/ssh.bin.* /usr/bin/ssh

cp -a backup/etc-ssh-*/* /etc/ssh/

systemctl restart sshd

```

安装后的关键路径

  • OpenSSH 9.8p1: `/usr/bin/ssh`, `/usr/sbin/sshd`, `/usr/libexec/openssh/`

  • OpenSSL 1.1.1w: `/usr/local/openssl-1.1/` (库文件在 `lib/`)

  • 配置文件: `/etc/ssh/`, `/etc/pam.d/sshd`, `/etc/sysconfig/sshd`

  • systemd 服务: `/usr/lib/systemd/system/sshd.service` (Type=simple)

验证安装

```bash

ssh -V # 应显示 OpenSSH_9.8p1, OpenSSL 1.1.1w

systemctl status sshd # 应为 active (running)

/usr/local/openssl-1.1/bin/openssl version # OpenSSL 1.1.1w

ldd /usr/sbin/sshd | grep libcrypto # 应指向 /usr/local/openssl-1.1/lib/

```

相关推荐
古法老登瞎折腾13 小时前
大数据智能运维实战(十一):运维 MCP 的工程化——权限、限流、审计与错误处理
java·大数据·运维·spring ai·mcp
琥珀.14 小时前
mysql中json数组转列表查询
linux·运维·服务器
dawnsky.liu14 小时前
在 RHEL 中使用 goose 实现远程主机管理
linux·运维·ai
Linux运维技术栈16 小时前
CVE-2026-91403 高危漏洞修复:Rocky Linux 9 多版本 JDK 环境清理实操
java·linux·运维
云上先途117 小时前
企业 AI 服务部署周期多久,会不会影响原有业务运转?
大数据·运维·人工智能
执伞人ONLY18 小时前
AI知识库自动化知识加工没做对,人工整理永远追不上知识产生
运维·人工智能·自动化
叼烟扛炮18 小时前
Linux 学习笔记(三十三):线程互斥——互斥锁(Mutex)与死锁
linux·运维·服务器·笔记·学习·1024程序员节
无足鸟ICT18 小时前
【RHCA+】who命令(查看已登陆用户)
linux·运维·服务器
RacentCLM18 小时前
证书即服务CaaS:从申请、续期到部署的自动化链路拆解
运维·数据库·自动化·ssl
注塑机数据采集联网19 小时前
注塑机生产管控MES系统应用
大数据·运维·服务器·人工智能·物联网