
核心要点(TL;DR)
- ClamAV 管文件查杀、Lynis 管基线审计、OSSEC 管入侵检测,三者互补而非替代。
- 云厂商免费版主机安全胜在开箱即用与告警闭环,但深度与自定义能力有限。
- 零预算推荐组合:Lynis 定期基线 + ClamAV 定时扫描 + OSSEC 实时监控。
- 免费工具只做检测不做阻断,关键业务仍需 WAF 与运行时防护兜底。
很多运维和站长都遇到过同一个尴尬:预算为零,但服务器上跑着真实业务,出了事却连「谁在什么时候改了什么文件」都说不清。免费主机安全工具并不缺,缺的是知道 ClamAV、Lynis、OSSEC 与云厂商免费版各自管哪一段、怎么装、怎么看结果。本文按「查杀—加固—入侵检测—托管兜底」四层拆解,每层给出可直接复制的命令与检查清单,读完就能在半小时内把基础防线搭起来。
一、四款工具到底各管什么
先把定位分清,避免用错工具做无用功:
| 工具 | 核心能力 | 典型场景 | 是否实时 |
|---|---|---|---|
| ClamAV | 恶意文件/病毒查杀 | Web 目录、上传目录、邮件附件扫描 | 否,定时/按需 |
| Lynis | 安全基线审计与加固建议 | 系统配置体检、合规自查 | 否,按需 |
| OSSEC | HIDS:文件完整性、日志入侵检测 | 异常登录、文件篡改告警 | 是,准实时 |
| 云厂商免费版 | 托管式主机安全基础能力 | 开箱告警、漏洞与基线概览 | 是 |
一句话记忆:ClamAV 管文件、Lynis 管配置、OSSEC 管行为、云厂商免费版管兜底。它们互补,不构成替代关系。
二、ClamAV:恶意文件查杀的正确姿势
Debian/Ubuntu 安装并更新病毒库:
apt install -y clamav clamav-daemon
systemctl stop clamav-freshclam
freshclam
systemctl start clamav-freshclam首次全盘扫描建议限定目录并降优先级,避免打满 IO:
nice -n 19 ionice -c3 clamscan -ri \
--exclude-dir='^/(proc|sys|dev)' \
--exclude-dir='^/var/lib/docker' \
--max-filesize=50M \
/var/www /tmp /home > /var/log/clamscan.log 2>&1生产环境更推荐常驻 clamd + clamdscan,省去每次加载病毒库的开销。检查清单:
- freshclam 日志是否每天成功更新,失败要查代理与镜像源;
- 上传目录、临时目录必须纳入扫描范围;
- 发现感染先隔离(
--move=/quarantine)再人工确认,不要直接删; - 用 cron 每周低峰扫描,日志接入告警。
三、Lynis:把服务器配置体检做起来
Lynis 是脚本化审计,安装即用:
apt install -y lynis
lynis audit system --quick报告在 /var/log/lynis-report.dat,重点看 hardening index 与 warning 列表。实操建议:
- 先跑一次记录基线分数,改完配置复跑对比;
- 按分类聚焦高危项:SSH 配置、内核参数、文件权限、服务暴露面;
- 不要盲从所有建议,涉及业务兼容的项(如禁用某服务)先评估再改;
- 把 Lynis 加入每月例行任务,形成配置漂移监控。
常见误区:只跑一次就完事。基线审计的价值在「定期复跑发现漂移」,而非单次分数。
四、OSSEC:文件完整性与入侵检测
OSSEC 部署分 server 与 agent,单机可装 local 模式。安装后关键动作是配置实时监控目录:
<syscheck>
<directories check_all="yes" realtime="yes">/var/www</directories>
<directories check_all="yes" realtime="yes">/etc</directories>
<ignore>/var/www/cache</ignore>
</syscheck>再配合登录日志告警规则,重点盯:SSH 暴力破解、异常 sudo、webshell 落地。排查时用 /var/ossec/bin/agent_control -l 看 agent 状态,用 tail -f /var/ossec/logs/alerts/alerts.log 实时观察。清单:
- realtime 目录不宜过多,避免 inotify 句柄耗尽;
- 规则要定期调优,否则误报会让人直接忽略告警;
- 告警需落到邮件/IM,否则等于没有监控。
五、云厂商免费版:开箱即用的兜底
主流云厂商的主机安全基础版通常免费,价值在于部署零成本、告警直接进控制台,覆盖漏洞概览、基线检查与异常登录。使用要点:
- 确认 agent 已安装并在线,否则控制台数据为空;
- 开启登录告警与暴力破解拦截通知;
- 把它当「兜底告警层」,深度检测仍靠 OSSEC 与 Lynis;
- 注意免费版通常不含主动阻断与高级威胁狩猎。
六、选型清单与行动建议
| 需求 | 首选 | 补充 |
|---|---|---|
| 查杀上传/邮件附件 | ClamAV | 定时任务 + 隔离区 |
| 系统加固与合规自查 | Lynis | 每月复跑对比 |
| 文件篡改与入侵告警 | OSSEC | 规则调优 + IM 推送 |
| 零运维成本告警 | 云厂商免费版 | 常开 agent |
行动建议:今天先做三件事——装 Lynis 跑一次基线并记录分数;给 ClamAV 配好每周低峰扫描的 cron;确认云厂商 agent 在线并打开登录告警。三者跑通后,再评估是否需要 OSSEC 做实时文件监控。需要提醒的是,免费工具以检测为主,真正的阻断层建议在边界侧补齐,例如 AegisX 的 WAF 与运行时防护能力,可与上述免费工具形成「检测在内、阻断在外」的纵深结构,避免单点失守。
常见问题(FAQ)
免费主机安全工具能替代商业主机安全产品吗?
不能完全替代。免费工具在文件查杀、基线审计、日志入侵检测上足够覆盖中小站点,但普遍缺少实时阻断、漏洞补丁联动与集中告警闭环。建议用免费工具做检测与加固,关键业务再叠加 WAF 或运行时防护形成纵深。
ClamAV 扫描很慢、占 CPU 高,怎么优化?
先限制扫描范围与并发。用 --exclude-dir 排除缓存与日志目录,用 nice/ionice 降低优先级,配合 clamd 常驻进程替代每次冷启动。定时任务放在业务低峰,并用 --max-filesize 跳过超大文件,可显著降低资源占用。
Lynis 的加固建议要不要全部照做?
不要。Lynis 输出的是通用基线建议,部分项会与业务冲突,例如禁用某些服务或收紧内核参数。正确做法是先跑审计看 warning,再逐条评估影响,用 --quick 与分类报告聚焦高危项,改完复跑对比分数变化。
OSSEC 和云厂商免费版入侵检测有什么区别?
OSSEC 开源可自建,规则可深度自定义,适合有运维能力、需要文件完整性监控与日志关联分析的场景;云厂商免费版部署零成本、告警直接进控制台,但规则黑盒、维度较浅。两者可并存,OSSEC 做深度,云版做兜底。
个人站长最低成本的安全组合是什么?
推荐 Lynis 每月基线审计 + ClamAV 每周定时查杀 + 云厂商免费版主机安全常开。三者零成本,覆盖加固、查杀与告警;再配合最小权限、SSH 密钥登录与定期备份,足以应对大多数常见风险。