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/

```

相关推荐
夏贰四16 小时前
管控数据加载调度如何规避任务冲突?数据加载运维监控体系该如何搭建?
java·大数据·运维
搬砖的小码农_Sky16 小时前
LANDrop 在 Ubuntu 上的安装方法
linux·运维·计算机网络·ubuntu
小玮看世界17 小时前
[Python]从40分到100分:一场关于编程思维的“辩论赛”
运维·服务器
goyeer17 小时前
Liunx日志管理与journalctl
java·linux·运维·服务器·运维开发·信息化·信息化企业管理
酷可达拉斯17 小时前
自动化运维-Ansible Role综合应用案例-基于LNMP部署wordpress
linux·运维·服务器·自动化·ansible
Lonely 净土1 天前
Linux 运维文件写入操作
linux·运维·服务器·文件管理
飞英思特无线充电1 天前
严苛场景巡检机器人的无线补能设计:点位、BMS、认证与运维边界
运维·机器人
Jimmy_jimi1 天前
利用nginx代理完成url重定位
运维·nginx
liuyicenysabel1 天前
多服务上线日记三:
运维·服务器·笔记·学习
一只鹿鹿鹿1 天前
大数据中心安全系统解决方案(Word文件)
大数据·运维·物联网·安全·政务