在 openEuler 24.03 系统上升级 OpenSSH 到最新的 10.3 版本(OpenSSH 10.3 于 2026 年 4 月发布),最通用且可靠的方式是通过源码编译安装。因为官方软件源的更新通常会滞后于上游的发布。
⚠️ 关键风险警告(操作前必读): 升级 SSH 服务是一项高风险操作。如果配置不当或服务启动失败,你将失去对服务器的远程访问权限。
在整个升级过程中,绝对不要关闭当前的 SSH 终端窗口! > 2. 建议提前配置备用登录方式(如通过云控制台的 VNC、IPMI 或物理机台直接操作)。
建议新开一个 SSH 窗口进行测试,确保无误后再断开旧连接。
环境准备与依赖安装
sudo dnf update -y
sudo dnf install -y gcc make wget tar zlib-devel openssl-devel pam-devel
备份现有配置(极其重要)
sudo cp -a /etc/ssh /etc/ssh_backup
sudo cp -a /etc/pam.d/sshd /etc/pam.d/sshd_backup
3. 下载并解压 OpenSSH 10.3 源码
cd /usr/local/src
sudo wget https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-10.3p1.tar.gz
sudo tar -zxvf openssh-10.3p1.tar.gz
cd openssh-10.3p1
编译与安装
配置编译参数。这里使用 --prefix=/usr 和 --sysconfdir=/etc/ssh 是为了覆盖直接安装
sudo ./configure --prefix=/usr --sysconfdir=/etc/ssh --with-pam --with-zlib
sudo make
sudo make install
注:make install 过程会自动覆盖 /usr/sbin/sshd 和 /usr/bin/ssh 等核心文件。如果提示文件已存在,它也会直接覆盖。
检测sshd配置是否正确
# 测试配置
/usr/local/openssh/sbin/sshd -t
# 如果测试通过,重启服务
systemctl restart sshd
# 查看版本
ssh -V
报错:

解决报错
找到报错提示的那几行,在行首添加 # 号将它们注释掉:
#GSSAPIAuthentication yes
#GSSAPICleanupCredentials no
#GSSAPIKexAlgorithms ...
最后重新检查配置文件是否正确
/usr/local/openssh/sbin/sshd -t
版本确定升级成功
[root@localhost openssh-10.3p1]# ssh -V
OpenSSH_10.3p1, OpenSSL 3.0.12 24 Oct 2023

