大量更新

This commit is contained in:
zeaslity
2025-04-17 15:13:02 +08:00
parent b9a006fc23
commit edcb27f0dc
38 changed files with 2307 additions and 423 deletions

View File

@@ -0,0 +1,69 @@
### 🤖 Assistant
以下是升级 Ubuntu 20.04.4 中 OpenSSH 版本的详细步骤,结合了公开资源和核心技术要点:
---
### **核心步骤概览**
1. **依赖准备**
- 升级前需同步更新 OpenSSLOpenSSH 的加密依赖):
```bash
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
```
需手动链接库文件(解决动态库路径问题):
```bash
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 # 更新库缓存
```
来源:[<sup>1</sup>](https://blog.csdn.net/weixin_44293618/article/details/128096741)、[<sup>2</sup>](https://www.cnblogs.com/subsea/p/17682962.html)
链接openssl的二进制文件
- ln -sf /usr/local/openssl/bin/openssl /usr/bin/openssl
2. **升级 OpenSSH**
- 下载并编译最新版 OpenSSH如 9.3p2
```bash
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
```
- 替换系统默认二进制文件:
```bash
mv /usr/bin/ssh /usr/bin/ssh.bak
ln -s /usr/local/openssh/bin/ssh /usr/bin/ssh
```
3. **服务配置与测试**
- 重启 SSH 服务并验证版本:
```bash
systemctl restart sshd
ssh -V # 应显示新版本号
```
- **注意事项**
- 操作前确保通过 `telnet` 或本地终端保持会话,避免升级失败导致无法远程连接(参考 [<sup>3</sup>](https://blog.csdn.net/lqh_linux/article/details/128796892))。
- 若遇到 `known_hosts` 报错,可清除 `~/.ssh/known_hosts` 中对应 IP 的记录([深信服社区](https://bbs.sangfor.com.cn/forum.php?mod=viewthread&tid=128631))。
---
### **常见问题解决**
- **符号链接错误**
若报错 `relocation error: symbol EVP_mdc2 not defined`,检查 OpenSSL 库路径是否正确链接,并重新执行 `ldconfig`[<sup>2</sup>](https://www.cnblogs.com/subsea/p/17682962.html))。
- **权限问题**
升级后若无法 root 登录,需修改 `/etc/ssh/sshd_config` 中的 `PermitRootLogin yes` 并重启服务([<sup>4</sup>](https://www.cnblogs.com/miaojx/p/14713244.html))。
---
### **总结**
- 核心依赖:升级 OpenSSL 时务必使用 `--shared` 参数并正确配置库路径。
- 风险控制:保留备份会话,避免升级中断导致失联。
- 验证方式:通过 `ssh -V` 和实际连接测试确认版本更新。
如需更详细的配置参数或故障排查,可参考上述来源链接。