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

银河麒麟 V10 x86_64源码离线升级openssl,openssh

最近服务器扫除漏洞,openssl和openssh的版本过低导致,该篇文章记录升级过程和升级过程中安装包的下载地址;

注意:因为我的服务器有系统盘备份,升级崩了可以恢复,在升级之前请看文章第七点,

一定看 一定看 一定看 一定看 一定看 一定看 一定看 一定看 一定看 一定看 一定看 一定看

1、OpenSSL 3.0.19

官网主页:https://www.openssl.org/source/ 直接下载链接:

https://www.openssl.org/source/openssl-3.0.19.tar.gz

2、OpenSSH 10.3p1(Portable Linux 适配版,带 p 后缀)

官方便携版主页:https://www.openssh.com/portable.html 直接下载链接:

https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-10.3p1.tar.gz

3、依赖安装包

为了不到处下载依赖,我将依赖打包到一个文件夹中,上传后解压

依赖包等我升级完其他服务器再回来补

然后再依赖包目录下执行:

rpm -Uvh *.rpm --nodeps

4、升级openssl

tar -zxvf openssl-3.0.19.tar.gz cd openssl-3.0.19 # 配置编译:安装路径+动态库支持 ./config --prefix=/usr/local/openssl3 shared zlib # 编译 make make install # 配置系统动态库 echo "/usr/local/openssl3/lib64" >> /etc/ld.so.conf ldconfig # 替换系统openssl软链接 mv /usr/bin/openssl /usr/bin/openssl.old ln -s /usr/local/openssl3/bin/openssl /usr/bin/openssl ln -s /usr/local/openssl3/lib64/libssl.so.3 /usr/lib64/libssl.so.3 ln -s /usr/local/openssl3/lib64/libcrypto.so.3 /usr/lib64/libcrypto.so.3 # 验证新版本 openssl version # 输出应显示:OpenSSL 3.0.19 31 Jan 2026 (Library: OpenSSL 3.0.19 31 Jan 2026)

5、升级openssh

tar -zxvf openssh-10.3p1.tar.gz cd openssh-10.3p1 # 编译配置(关键参数:绑定新OpenSSL、启用PAM、系统路径适配麒麟) ./configure \ --prefix=/usr \ --sysconfdir=/etc/ssh \ --with-pam \ --with-zlib \ --with-ssl-dir=/usr/local/openssl3 \ --with-privsep-path=/var/lib/sshd make -j$(nproc) make install # 修复SSH主机密钥权限 chmod 600 /etc/ssh/ssh_host_*_key # 清理旧版废弃GSSAPI配置(新版不兼容,会启动失败) sed -i '/^GSSAPIAuthentication/d' /etc/ssh/sshd_config sed -i '/^GSSAPICleanupCredentials/d' /etc/ssh/sshd_config # 兼容老旧客户端(避免rsa算法拒绝连接) echo "PubkeyAcceptedKeyTypes +ssh-rsa" >> /etc/ssh/sshd_config echo "HostKeyAlgorithms +ssh-rsa" >> /etc/ssh/sshd_config echo "KexAlgorithms +diffie-hellman-group1-sha1" >> /etc/ssh/sshd_config

6、重启 sshd、校验升级结果

# 检查sshd配置语法(报错不要重启) sshd -t # 重载systemd,重启服务 systemctl daemon-reload systemctl restart sshd systemctl enable sshd # 查看新版本 ssh -V # 正常输出示例:OpenSSH_10.3p1, OpenSSL 3.0.19 31 Jan 2026 # 查看服务状态 systemctl status sshd

7、关键注意点(升级前必做)

此处 是关键 是关键 是关键 是关键 是关键 是关键 是关键 是关键

1 、备份原有 SSH 全部文件(回滚救命)
# 二进制程序备份 cp /usr/bin/ssh /usr/bin/ssh.bak cp /usr/sbin/sshd /usr/sbin/sshd.bak # 配置目录整体备份 cp -r /etc/ssh /etc/ssh.bak.$(date +%Y%m%d) # PAM、systemd文件备份 cp /etc/pam.d/sshd /etc/pam.d/sshd.bak cp /usr/lib/systemd/system/sshd.service /usr/lib/systemd/system/sshd.service.bak
2、打开两个终端窗口,并且升级过程不要关闭(必须做必须做)
3、开启 Telnet 兜底通道(升级失败应急登录)
yum install telnet-server telnet xinetd -y systemctl enable --now telnet.socket # 防火墙放行23端口 firewall-cmd --add-port=23/tcp --permanent firewall-cmd --reload # 允许root telnet登录 echo "pts/0" >> /etc/securetty
4、异常回滚方案(升级失败无法 SSH 时,Telnet 登录执行)
# 恢复ssh二进制 mv /usr/bin/ssh.bak /usr/bin/ssh mv /usr/sbin/sshd.bak /usr/sbin/sshd # 恢复配置目录 rm -rf /etc/ssh && mv /etc/ssh.bak.* /etc/ssh # 恢复PAM配置 mv /etc/pam.d/sshd.bak /etc/pam.d/sshd # 恢复系统openssl mv /usr/bin/openssl.old /usr/bin/openssl ldconfig # 重启服务 systemctl restart sshd

最后,希望大家升级顺顺利利

http://www.gsyq.cn/news/1589840.html

相关文章:

  • 8个当天可跑通的机器学习实战项目路线图
  • 一夜之间,Claude成我同事了
  • Linux 组调度的 tg_load_avg:任务组的平均负载计算
  • FanControl终极指南:如何彻底解决Windows风扇噪音与散热难题
  • D2DX终极指南:让暗黑破坏神2在现代PC上完美重生
  • Audio Slicer静音切割秘籍:让音频剪辑效率提升400倍的实战指南
  • esxishell 允许联网
  • 3分钟完成B站m4s转mp4:免费开源工具终极指南
  • 原神自动化助手完整指南:3步实现智能游戏辅助
  • Kaggle泰坦尼克号实战:特征工程三重奏——翻译、降噪与对齐
  • FanControl深度解析:Windows风扇控制的终极技术解决方案
  • 多源异构信号融合的鲁棒资产配置系统
  • 高校信息化中心主任的数据管理革新之路
  • 口碑好的餐饮外卖代运营平台
  • 探索NDS游戏文件编辑的专业工具:从入门到实战精通
  • VFS 与 Ext4 的深层逻辑:Linux 文件系统架构剖析与性能调优
  • 领导让你从springboot2.X升级到springboot3.X 这篇文章就够了
  • 2026软件测试高频面试题
  • 浏览器资源嗅探扩展深度解析:猫抓的技术架构与实战应用完全指南
  • 论文写作黑科技!常用的AI写作辅助软件,框架搭建零压力
  • PHP变量覆盖漏洞实战:从原理到EDR后台渗透测试案例
  • PN7462时钟与电源管理:从寄存器配置到嵌入式系统稳定实战
  • 深度学习模型部署:从 PyTorch 到 ONNX Runtime 的推理加速路径
  • STM32单片机超声波避障智能车锂电池充电系统108-1(设计源文件+万字报告+讲解)(支持资料、图片参考_相关定制)_可以扫码
  • 塞尔达传说旷野之息存档编辑器的终极指南:快速修改卢比、武器和属性
  • 高并发 AI 工作流:基于 Go 语言并发栅栏的并行任务控制实践
  • 彻底掌握你的数字记忆:WeChatMsg开源工具完全指南
  • 2026 年政务数据怎么管?一个大数据局的经验分享
  • Agentic System与AI Agent的本质区别:从单点智能到系统化决策
  • SAP系统自学到底靠谱吗?