服务器安全基线一键巡检
定位
针对 Linux / Windows 服务器的安全基线体检工具。输出一套只读、不改动系统的巡检脚本 + 结构化风险报告,帮助运维/管理员快速发现明显安全隐患并给出加固建议。契合"IT 运维与安全"分类与等保自查场景。
原则:只检测、只读、不自动整改、不做破坏性操作。所有整改给建议由管理员决定执行。
何时使用
- 用户说"帮我检查下这台服务器安全不安全""做个体检""看看有没有被入侵的痕迹""自查有没有明显漏洞""等保自查"。
- 用户想知道开放了哪些危险端口、有没有多余账号、root/弱口令、SSH 是否允许 root 登录、防火墙是否开启、系统是否更新等。
核心工作流
- 确认操作系统:Linux(发行版:Ubuntu/CentOS/Debian…)、Windows。默认 Linux 通用。
- 按系统生成只读巡检脚本,检测项覆盖(不越界、只读):
- 账户安全:空口令账号、uid=0(root)账号、可登录账号列表、过期/永不过期账号、sudo 权限账号。
- 认证策略:密码过期策略(最大/最小天数)、账户锁定策略、是否允许 root 远程登录(SSH PermitRootLogin)。
- 网络与端口:监听端口及对应服务、对外开放高危端口(22/3306/6379/3389/21/23 等对公网)、防火墙状态(iptables/firewalld/ufw/Windows 防火墙)。
- 服务与进程:非必要/可疑监听服务、可疑进程(如 CPU/内存异常、隐藏进程)。
- 更新与补丁:系统更新天数/待更新安全补丁数。
- 入侵痕迹线索(只读):最近登录记录、异常 last/lastb、cron 中可疑任务、/tmp 异常可执行、历史命令中的危险项。
- 文件权限:关键文件(如 /etc/passwd /etc/shadow /etc/ssh/sshd_config)权限是否过宽。 - 产出结构化报告(Markdown 或可直接看的终端输出):
- 每项标 风险等级:🔴高(立即处理)/🟠中(尽快)/🟢低(建议)/⚪信息。
- 每项给 加固建议(具体命令/操作),但不自动执行。
- 结尾给"风险汇总与优先处理顺序"。 - 提供运行方式:Linux 需 root;给出只读脚本,明确告知"本脚本不会修改任何系统配置"。
质量红线
- 绝不自动整改:发现弱口令/危险配置只报告+给建议,绝不自动改密码、改 sshd_config、加防火墙规则(除非用户明确要求另给"加固脚本",且给"先备份+可回滚"版本)。
- 不做未授权扫描/渗透他人系统、读取他人隐私文件、绕过登录。
- 巡检脚本本身只读:只用
last、ss、cat、stat、systemctl is-active等读取性命令,不kill、不rm、不写系统文件。 - 不把脚本写成可被恶意利用的反向 shell/持久化后门。
依赖资源
scripts/linux-security-audit.sh:Linux 只读巡检脚本(骨架,生成时按需细化)。references/audit-checklist.md:巡检项清单与等保二级/三级对照参考(生成报告评分用)。- 本 skill 纯本地执行只读命令,不依赖第三方 API。
输出约定
- 产出为一份安全巡检报告:①运行方式(需root/管理员) ②逐项检测结果与风险等级 ③加固建议 ④风险汇总与优先级。
- 报告落成 Markdown 文件或终端可读文本均可。
- 明确指出检测范围与局限(如"仅基线巡检,不替代专业渗透测试")。