🔒 安全巡检:2026-09-11(全量验收)

This commit is contained in:
ATRI
2026-09-11 01:43:39 +08:00
parent ac40e39ffc
commit bbb3444ccf
@@ -0,0 +1,105 @@
# 🔒 宿主机安全巡检报告 · 2026-09-11
- **采集时间**2026-09-11 01:42CST,周五)
- **主机**ser2983511200008 核)
- **触发方式**:👤 主人手动触发(全量验收,非周日定时)
- **巡检依据**`security/SECURITY_AUDIT_CHECKLIST.md`
- **总体结论**:🟢 **未发现恶意软件与入侵痕迹** | 🟡 需关注 5 项 | 🔴 已处置 0 项
---
## 一、系统状态速览
| 指标 | 数值 | 判定 |
|:---|:---|:---:|
| 系统负载(1/5/15 分钟) | 1.52 / 1.56 / 1.548 核) | 🟢 约 19% |
| 内存 | 5.2Gi / 7.8Gi66.7% | 🟢 正常 |
| Swap | 3.5Gi / 4.0Gi87.5% | 🟡 偏高 |
| 系统盘 | 16G / 24G69% | 🟢 正常 |
| 数据盘 | 44G / 79G60% | 🟢 正常 |
| 连续运行 | 223 天 4 小时 | 🟢 稳定 |
---
## 二、安全检查结果表
| # | 检查项 | 状态 | 说明 |
|:--|:---|:---:|:---|
| 1 | 资源异常进程 | 🟢 | CPU/内存 Top 均为已知服务(mysqld / nacos / dockerd / llbot / astrbot / minio),无异常高占用 |
| 2 | 恶意进程名扫描 | 🟢 | 未匹配到 xmrig / minerd / kdevtmpfsi / kinsing 等矿池特征;`watchdogd` 为内核线程,`chrome-headless-shell` 为 playwright 无头浏览器(AstrBot 渲染用) |
| 3 | 网络连接与外联 | 🟢 | ESTABLISHED 出站均为已知(fwupdmgr→CDN、frps 隧道、SSH 自连);无陌生矿池外联 |
| 4 | 计划任务(cron | 🟢 | 仅 `acme.sh` 证书续期 + 系统默认 `run-parts` + `certbot``/var/spool/cron/crontabs/root` 内容正常;`atq` 为空 |
| 5 | 开机自启与服务 | 🟢 | enabled 单元均为系统默认 + snap mount + containerd/docker/cron/frps,无伪装 `.service` |
| 6 | SSH 安全 | 🟡 | UID=0 仅 root;无空密码账号;`authorized_keys` 仅 1 条(主人本人);但 **root 直登 + 密码登录已开启 + 默认 22 端口**,且被公网持续爆破 |
| 7 | 文件系统异常 | 🟢 | `/tmp` `/dev/shm` `/var/tmp` 近 30 天无可执行文件;无 `.X*` 伪装隐藏文件;systemd 目录 7 天内仅 snap mount 变动 |
| 8 | 用户与权限 | 🟢 | 普通用户仅 `Kronecker`(1000)sudoers 为标准配置;`/etc/sudoers.d/` 仅 README |
| 9 | 防火墙 | 🟡 | `ufw status` = inactive(服务在跑但规则未启用);iptables 共 110 行(多为 Docker 自动规则) |
| 10 | Docker 安全 | 🟡 | 见下方关注项 4 |
| 11 | 日志异常 | 🟡 | journal 近 7 天 err 全为 sshd 「kex_exchange_identification」爆破噪声,无系统级报错 |
| 12 | rootkit 检查 | ⚪ | 未安装 rkhunter / chkrootkit(可选装) |
---
## 三、🚨 威胁发现与处置记录
> **未发现恶意软件与入侵痕迹。**
> 无挖矿进程、无恶意 cron、无陌生 SSH 公钥、无 UID=0 可疑账号、无反弹 shell、无临时目录恶意可执行文件。
**本次未执行任何处置动作。**(🟡 项按原则只报告、不擅动)
---
## 四、🟡 需关注项(5 项)
### 1. SSH 22 端口持续遭公网爆破
- `lastb` 记录 `btmp` 自 2026-09-01 起累积,`auth.log` 累计 **131,224 次** `Failed password`
- 攻击源轮番尝试 `root` / `ftpuser` 等账号(如 `51.89.x.x``122.224.x.x``122.166.x.x`
- 采集瞬间仍有爆破连接处于 ESTABLISHED 状态
- **判定**:🟡 尚未成功(无异常登录记录),但属于持久化噪音与潜在风险
### 2. SSH 配置偏宽松 + 无 fail2ban
- `PermitRootLogin yes``PasswordAuthentication yes`、端口 22
- `fail2ban` 未安装/未运行(`inactive`
- **判定**:🟡 与第 1 项叠加,风险放大
### 3. 多个服务端口监听 0.0.0.0(对外裸露)
- 数据库类:MongoDB `27017`、Redis `6380` / `6382`
- 其他:`9000`(MinIO) / `8848`(Nacos) / `6688` / `6199` / `6185` / `9443` / `1336` / `3010` / `3001` / `1080`
- **判定**:🟡 若上游无额外安全组/防火墙限制,存在被扫面利用风险(Redis/Mongo 是常见入侵入口)
### 4. Docker 容器异常与权限
- `filesread_backend` 持续 `Restarting`(反复重启)、`filesread_celery``unhealthy`
- `hoj-judgeserver` 为**特权容器**Privileged=true,评测机判题需要,可接受但需知其风险)
- `portainer``astrbot` 挂载了 `/var/run/docker.sock`(等于宿主机 root 权限入口)
- 3 个 Exited 容器:`opennexus-stage1-initialize-1`(0)、`hungry_rhodes`(0)、`napcat`(137,已由 llbot 取代)
- **判定**:🟡 无恶意镜像,但需关注稳定性与权限面
### 5. 内存 / Swap 偏高
- 内存 66.7%(接近 70% 关注线);**Swap 87.5%**
- **判定**:🟡 长期高 swap 会拖慢服务,建议排查常驻大内存进程(如挂机脚本、java 堆)
---
## 五、💡 加固建议(≤3 条,可执行)
1. **收窄 SSH 暴露面**:改非标端口 + 关闭 `PasswordAuthentication`(仅密钥登录)+ 加 fail2ban(如已确认密钥可用,可先停 root 密码登录)
2. **数据库端口改绑内网**:将 MongoDB `27017`、Redis `6380/6382``0.0.0.0` 改为 `127.0.0.1`,或在上游安全组加白名单(仅放行必要 IP)
3. **修复 filesread_backend 重启循环**:查看其日志定位崩溃原因,顺带评估是否移除 portainer 对 `docker.sock` 的挂载或加只读
---
## 六、📋 处置记录
| 时间 | 动作 | 目标 | 结果 |
|:---|:---|:---|:---|
| — | 无 | — | 本次为巡检,未执行任何处置 |
---
## 七、🔒 脱敏说明
本报告已按规脱敏:公网 IP 一律打码为 `x.x.x.x`,不含任何 QQ 号 / 群号 / 凭据 / SMTP 信息;SSH 公钥注释已省略。
---
*生成:ATRI 🥕(服务器安全巡检)· 2026-09-11 01:42 CST*