闲置服务为什么要清
主机上常年运行的服务里总有一批没人用的:旧版 API、演示应用、遗留管理页面。它们同样占用端口、同样可能有漏洞,但因为「没人用」反而没有人盯着修。清理方法是先盘点监听端口与已部署应用,再逐项确权,闲置的先停用并记录,观察一周无异常后再卸载删除。
基本信息
| 盘点对象 | 监听端口与进程、开机自启服务、已部署应用目录 |
|---|---|
| 确权方式 | 看访问日志,近 90 天无请求的入口列为候选 |
| 处置顺序 | 先停用观察一周,再卸载删除 |
| 判断原则 | 「没人访问」可能是季度性业务,需业务方书面确认 |
| 记录要求 | 清理清单回填台账,避免下次重复盘点 |
| 关联风险 | 闲置服务漏洞无人跟进、默认口令未改、版本过旧 |
盘点与处置
| 环节 | 做法 | 产出 |
|---|---|---|
| 端口盘点 | ss 列出监听端口与进程 | 端口与服务的对应关系 |
| 自启服务 | systemctl 列出开机启用项 | 待确认的服务清单 |
| 应用盘点 | 查看 Web 目录与部署记录 | 仍在部署但无人访问的应用 |
| 流量确权 | 查访问日志与调用方 | 候选停用清单 |
| 业务确认 | 业务方书面确认 | 可处置清单与时间计划 |
| 停用观察 | 停用一周并监控报错 | 无异常后进入卸载 |
盘点命令
盘点命令
ss -lntup # 全部监听端口与对应进程
systemctl list-unit-files --state=enabled | head -30 # 开机自启服务
ls -lt /www/wwwroot 2>/dev/null | head # 已部署应用目录
# 用访问日志判断入口是否还有真实流量
ls -lt /var/log/nginx/ | head典型使用场景
- 主机暴露面收敛的日常动作
- 接管老系统时的服务清理
- 迁云与重装前的现状盘点
- 演练前缩小攻击面
- 合规检查中的服务最小化举证
- 资源回收:释放端口、内存与授权
候选清单要让业务方确认,而不是由 IT 单方面判断。「没人访问」可能是季度性业务或月末跑批,直接删会造成真实故障。
直接卸载判断为无人使用的服务风险很高:季度对账、月末跑批这类低频应用平时没有流量,事后才发现依赖,恢复成本远高于先停用观察。