大量更新
This commit is contained in:
2
62-202504-云南甘肃漏洞/openssh相关漏洞.txt
Normal file
2
62-202504-云南甘肃漏洞/openssh相关漏洞.txt
Normal file
@@ -0,0 +1,2 @@
|
||||
OpenSSH 安全漏洞(CVE-2023-51767)
|
||||
|
||||
69
62-202504-云南甘肃漏洞/ubuntu升级OpenSSH.md
Normal file
69
62-202504-云南甘肃漏洞/ubuntu升级OpenSSH.md
Normal file
@@ -0,0 +1,69 @@
|
||||
### 🤖 Assistant
|
||||
|
||||
以下是升级 Ubuntu 20.04.4 中 OpenSSH 版本的详细步骤,结合了公开资源和核心技术要点:
|
||||
|
||||
---
|
||||
|
||||
### **核心步骤概览**
|
||||
1. **依赖准备**
|
||||
- 升级前需同步更新 OpenSSL(OpenSSH 的加密依赖):
|
||||
```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` 和实际连接测试确认版本更新。
|
||||
|
||||
如需更详细的配置参数或故障排查,可参考上述来源链接。
|
||||
89
62-202504-云南甘肃漏洞/查看openssl的位置.md
Normal file
89
62-202504-云南甘肃漏洞/查看openssl的位置.md
Normal file
@@ -0,0 +1,89 @@
|
||||
### 🤖 Assistant
|
||||
|
||||
在Ubuntu系统中,可以通过以下方法查找OpenSSL的库文件(`.so`文件)和安装路径:
|
||||
|
||||
---
|
||||
|
||||
### **1. 查找OpenSSL可执行文件路径**
|
||||
```bash
|
||||
which openssl
|
||||
```
|
||||
输出示例:
|
||||
`/usr/bin/openssl`
|
||||
|
||||
---
|
||||
|
||||
### **2. 查找OpenSSL动态库文件路径(`.so`文件)**
|
||||
#### 方法1:通过 `ldconfig` 查询
|
||||
```bash
|
||||
ldconfig -p | grep libssl.so
|
||||
```
|
||||
输出示例:
|
||||
```
|
||||
libssl.so.3 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libssl.so.3
|
||||
libssl.so (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libssl.so
|
||||
```
|
||||
|
||||
#### 方法2:全局搜索文件
|
||||
```bash
|
||||
sudo find / -name "libssl.so*" 2>/dev/null
|
||||
```
|
||||
输出示例:
|
||||
```
|
||||
/usr/lib/x86_64-linux-gnu/libssl.so.3
|
||||
/usr/local/openssl/lib/libssl.so
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### **3. 查找openssl头文件位置(`.h`文件)**
|
||||
```bash
|
||||
find /usr -name "openssl" -type d 2>/dev/null
|
||||
```
|
||||
输出示例:
|
||||
```
|
||||
/usr/include/openssl # 系统默认头文件路径
|
||||
/usr/local/include/openssl # 手动安装的可能路径
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### **4. 检查OpenSSL版本及安装路径**
|
||||
```bash
|
||||
openssl version -a
|
||||
```
|
||||
输出中会包含 `OPENSSLDIR`,即OpenSSL的配置目录:
|
||||
```
|
||||
OPENSSLDIR: "/usr/local/ssl"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### **常见路径说明**
|
||||
| 文件类型 | 典型路径(Ubuntu 20.04) |
|
||||
|----------------|---------------------------------------------|
|
||||
| **可执行文件** | `/usr/bin/openssl` |
|
||||
| **动态库** | `/usr/lib/x86_64-linux-gnu/libssl.so.3` |
|
||||
| **头文件** | `/usr/include/openssl` |
|
||||
| **自定义安装** | `/usr/local/openssl/lib`(手动编译时指定) |
|
||||
|
||||
---
|
||||
|
||||
### **特殊情况处理**
|
||||
- **手动编译的OpenSSL**:
|
||||
如果通过源码安装(例如指定了 `--prefix=/usr/local/openssl`),库文件通常位于 `/usr/local/openssl/lib`。
|
||||
需要通过 `ldconfig` 注册路径:
|
||||
```bash
|
||||
echo "/usr/local/openssl/lib" > /etc/ld.so.conf.d/openssl.conf
|
||||
ldconfig
|
||||
```
|
||||
|
||||
- **多版本共存问题**:
|
||||
使用 `update-alternatives` 管理多版本(参考 [<sup>1</sup>](https://blog.csdn.net/newbeixue/article/details/103029704))。
|
||||
|
||||
---
|
||||
|
||||
### **总结**
|
||||
- **最快方法**:直接运行 `ldconfig -p | grep libssl.so`。
|
||||
- **检查依赖**:编译报错时,需确认库路径是否在 `LD_LIBRARY_PATH` 中。
|
||||
- **源码安装**:注意 `--prefix` 参数指定的路径(参考 [<sup>2</sup>](https://www.henghost.com/jishu/25183/))。
|
||||
Reference in New Issue
Block a user