shell 纸一的运维终端 _ - 2025年9月
type: channel
link: https://type.paper1.cc/index.php/2025/09/
description: #系统错误：大脑空间不足 _
items: openssh 版本升级

openssh 版本升级
type: item
date: 2025-09-09T09:06:00+00:00
description: 一、准备工作首先确认升级方案，即双版本方案和替换方案。双版本方案：2个版本ssh同时存在，监听不同的端口，使用不同的配置文件。替换方案：新版本替换老版本，二进制文件升级为新版本，配置文件仍使用老版本。程序名称版本号依赖openssh10.0p2openssl1.1.1w1.1 环境检查1.1.1 查看当前openssl版本[root@localhost ~]# openssl version OpenSSL 1.0.2k-fips 26 Jan 20171.1.2 查看当前openssh版本[root@localhost ~]# ssh -V OpenSSH_7.4p1, OpenSSL 1.0.2k-fips 26 Jan 20171.2 依赖安装有公网#全量依赖 yum groupinstall "Development Tools" -y yum install wget openssl-devel zlib-devel pam-devel krb5-devel libedit-devel libxcrypt-devel -y #简化依赖 yum install gcc make wget tar zlib-devel openssl-devel pam-devel libedit-devel krb5-devel -y 无公网提前下载rpm/deb包 yumdownloader --resolve --destdir=./ gcc make wget tar zlib-devel openssl-devel pam-devel libedit-devel krb5-devel1.3 编译安装openssl1.1.1w下载https://www.openssl.org/source/本地文件：openssl-1.1.1w.tar.gz编译安装tar -xf openssl-1.1.1w.tar.gz cd openssl-1.1.1w ./config make make install创建软连接#CentOS sudo ln -s /usr/local/lib64/libssl.so.1.1 /usr/lib64/ sudo ln -s /usr/local/lib64/libcrypto.so.1.1 /usr/lib64/ #Ubuntu sudo ln -s /usr/local/lib/libcrypto.so.1.1 /usr/lib/x86_64-linux-gnu/libcrypto.so.1.1 sudo ln -s /usr/local/lib/libssl.so.1.1 /usr/lib/x86_64-linux-gnu/libssl.so.1.1验证版本openssl version -a二、排错2.1 make报错：Unable to load host key "/etc/ssh/ssh_host_ed25519_key": bad permissions Unable to load host key: /etc/ssh/ssh_host_ed25519_key处理方法：修改文件权限chmod 600 /etc/ssh/ssh_host_* chown root:root /etc/ssh/ssh_host_*2.2 GSSAPI 相关警告OpenSSH 10 默认编译没有开启 GSSAPI 支持，但是原配置文件保留了 GSSAPIAuthentication 和 GSSAPICleanupCredentials 选项，configure 没有 --with-gssapi 参数，所以报“Unsupported option”。/etc/ssh/sshd_config line 79: Unsupported option GSSAPIAuthentication /etc/ssh/sshd_config line 80: Unsupported option GSSAPICleanupCredentials如果你不使用 Kerberos，可以直接注释掉 /etc/ssh/sshd_config 里这两行#GSSAPIAuthentication yes #GSSAPICleanupCredentials yes如果需要 Kerberos，确保系统安装了 krb5-devel。在 3.2 预编译 步骤中重新编译时填加（在下文中已添加，直接使用即可）：./configure ... --with-gssapi=/usr2.3 root用户登录老版本的openssh和新版本的openssh的默认值不同。老版本默认允许root用户登录，新版本默认不允许。如果在老版本的配置文件中#PermitRoot…