H3C 官方 FTP 仓库没有 CentOS7 x86_64 的 openssh-10.3p1 官方 RPM 升级包
H3C FTP 仅提供自研设备固件、UIS/IMC 配套官方 Linux 镜像预装组件,不会上架通用第三方开源软件(OpenSSH)高版本离线 rpm;
CentOS7 官方原生 yum 源最高仅提供 openssh-7.4p1,无 10.x 系列官方包;
你现场限制:无外网、无 yum 联网,只能两种离线方案升级 openssh-10.3p1。
一、关键前置硬性依赖(必须先解决)
CentOS7 自带 OpenSSL 1.0.2k-fips,OpenSSH 10.3p1 最低要求 OpenSSL ≥1.1.1,不升级 OpenSSL 无法编译 / 安装新版 SSH。
升级顺序固定:
OpenSSL 1.1.1w/3.x → zlib → openssh-10.3p1
二、方案 1:离线源码编译安装(最稳定,无预编译 rpm 依赖)
1. 提前在外网机器下载 3 套源码包(拷贝到离线服务器)
zlib:zlib-1.3.1.tar.gz
openssl:openssl-1.1.1w.tar.gz
openssh:openssh-10.3p1.tar.gz
2. 离线服务器操作步骤
步骤 1:备份原有 SSH(防止升级失败失联)
bash
运行
mkdir /etc/ssh_bak
cp -r /etc/ssh/* /etc/ssh_bak/
cp /usr/bin/ssh /usr/bin/ssh.bak
cp /usr/sbin/sshd /usr/sbin/sshd.bak
# 临时安装telnet兜底(升级失败可telnet登录救机)
rpm -ivh telnet-server-*.rpm xinetd-*.rpm
systemctl start telnet.socket
systemctl enable telnet.socket
步骤 2:编译升级 zlib
bash
运行
tar zxf zlib-1.3.1.tar.gz
cd zlib-1.3.1
./configure --prefix=/usr/local/zlib
make && make install
echo "/usr/local/zlib/lib" >> /etc/ld.so.conf
ldconfig
步骤 3:编译升级 OpenSSL 1.1.1w
bash
运行
tar zxf openssl-1.1.1w.tar.gz
cd openssl-1.1.1w
./config --prefix=/usr/local/openssl shared zlib-dynamic
make -j4 && make install
# 替换系统软链接
mv /usr/bin/openssl /usr/bin/openssl.old
ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl
echo "/usr/local/openssl/lib" >> /etc/ld.so.conf
ldconfig
openssl version # 验证版本
步骤 4:编译安装 openssh-10.3p1
bash
运行
tar zxf openssh-10.3p1.tar.gz
cd openssh-10.3p1
./configure \
--prefix=/usr \
--syscOnfdir=/etc/ssh \
--with-ssl-dir=/usr/local/openssl \
--with-zlib=/usr/local/zlib \
--with-pam \
--with-md5-passwords \
--with-privsep-user=sshd
make -j4
make install
# 恢复sshd配置、重启服务
cp contrib/redhat/sshd.init /etc/init.d/sshd
chmod +x /etc/init.d/sshd
systemctl daemon-reload
systemctl restart sshd
ssh -V # 验证 OpenSSH_10.3p1
三、方案 2:第三方预编译 RPM 离线包(快速部署,无编译环境)
外网提前下载 CentOS7 x86_64 适配的 openssh-10.3p1 el7 rpm 合集(openssh/openssh-server/openssh-clients),同时配套 OpenSSL1.1.1 离线 rpm 包。
离线安装命令
bash
运行
# 先升级openssl依赖
rpm -ivh openssl-1.1.1w-*.rpm --nodeps
# 批量升级openssh全套
rpm -ivh openssh-*.rpm --force --nodeps --replacepkgs
# 重启服务校验
systemctl restart sshd
ssh -V
风险提示:第三方 rpm 非官方编译,部分企业等保不认可,优先推荐源码编译。
四、补充说明
不要在 H3C FTP 找该包:H3C FTP 仅存放设备固件、UIS/IMC 配套介质,无通用 Linux 开源软件高版本;
离线环境必备兜底:升级前必须开启 telnet,一旦 SSH 编译失败,可通过 telnet 登录回滚;
版本兼容红线:CentOS7 原生 openssl1.0.2 无法支撑 OpenSSH10.x,必须单独升级 openssl,否则编译直接报错;
回滚方案:升级异常时,拷贝备份的 ssh/openssl 二进制文件覆盖,重启 sshd 即可恢复 7.4p1 旧版本。
暂无评论
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作
举报
×
侵犯我的权益
×
侵犯了我企业的权益
×
抄袭了我的内容
×
原文链接或出处
诽谤我
×
对根叔社区有害的内容
×
不规范转载
×
举报说明
暂无评论