3.0 KiB
3.0 KiB
🤖 Assistant
以下是升级 Ubuntu 20.04.4 中 OpenSSH 版本的详细步骤,结合了公开资源和核心技术要点:
核心步骤概览
- 依赖准备
- 升级前需同步更新 OpenSSL(OpenSSH 的加密依赖):
需手动链接库文件(解决动态库路径问题):
wget https://github.com/openssl/openssl/releases/download/openssl-3.0.16/openssl-3.0.16.tar.gz tar -zxvf openssl-3.0.16.tar.gz cd openssl-3.0.16 ./config --prefix=/usr/local/openssl --shared # 关键参数 `--shared` make && make install来源:1、2 链接openssl的二进制文件ln -s /usr/local/include/openssl /usr/include/openssl ln -sf /usr/local/lib64/libssl.so /usr/local/openssl/lib64/libssl.so echo "/usr/local/openssl/lib64" > /etc/ld.so.conf.d/openssl.conf ldconfig # 更新库缓存
- 升级前需同步更新 OpenSSL(OpenSSH 的加密依赖):
- ln -sf /usr/local/openssl/bin/openssl /usr/bin/openssl
-
升级 OpenSSH
- 下载并编译最新版 OpenSSH(如 9.3p2):
wget https://cloudflare.cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.3p2.tar.gz tar -zxvf openssh-9.3p2.tar.gz cd openssh-9.3p2 ./configure --prefix=/usr/local/openssh --with-ssl-dir=/usr/local/openssl make && make install - 替换系统默认二进制文件:
mv /usr/bin/ssh /usr/bin/ssh.bak ln -s /usr/local/openssh/bin/ssh /usr/bin/ssh
- 下载并编译最新版 OpenSSH(如 9.3p2):
-
服务配置与测试
常见问题解决
-
符号链接错误:
若报错relocation error: symbol EVP_mdc2 not defined,检查 OpenSSL 库路径是否正确链接,并重新执行ldconfig(2)。 -
权限问题:
升级后若无法 root 登录,需修改/etc/ssh/sshd_config中的PermitRootLogin yes并重启服务(4)。
总结
- 核心依赖:升级 OpenSSL 时务必使用
--shared参数并正确配置库路径。 - 风险控制:保留备份会话,避免升级中断导致失联。
- 验证方式:通过
ssh -V和实际连接测试确认版本更新。
如需更详细的配置参数或故障排查,可参考上述来源链接。