该模块的功能 #
加固就是关闭一扇扇门的工作:移除不需要的服务、调整权限、收紧启动与网络……但难点在于知道还剩下什么需要加固。这正是该模块登场的地方。
lynis 模块依托 Lynis 运行一次加固审计,对照 CIS 标准的最佳实践检查你的系统。完成后,它会给你一份可执行的报告,包含三样东西:一个加固指数(0 到 100 的分数,概括系统的加固程度)、值得解决的告警列表,以及一组你可以按优先级处理的建议——每一项都附带对应的 test id(例如 SSH-7408),让你确切知道它检查的是什么、该在哪里动手。
审计会读取系统配置、权限与服务,因此需要 root 权限(使用 sudo)。一次完整的检查可能需要几分钟;如果你赶时间,可以用 --quick 做一次快速检查。
常见任务 #
选择你想做的事。每份配方都附有写好的命令——只需复制,然后点击复制。
1
运行我的第一次审计
几分钟内测量你的服务器加固到什么程度。
用 ubuntu 用户通过 SSH 连接到你的服务器。
运行完整审计。完成后你会看到一份摘要,包含加固指数以及有多少条告警和建议:
$ sudo imaxe lynis audit赶时间?快速检查会跳过最耗时的测试,立刻给你一个大致的快照:
$ sudo imaxe lynis audit --quick2
查看最新的报告
查看指数、告警以及带有 test id 的建议。
显示最近一次审计的报告,顶部是加固指数,下方是告警与建议的列表:
$ sudo imaxe lynis report想用于工具或面板?加上 --json,就能得到结构化格式的同一份报告:
$ sudo imaxe lynis report --jsonSSH-7408):用它来了解检查内容,并决定优先加固哪些项。3
查看当前状态
快速一瞥:上次审计是什么时候、你的分数是多少。
查看上次审计的日期、当前加固指数,以及是否启用了自定义配置文件:
$ sudo imaxe lynis status也提供 JSON 输出,非常适合用于监控:
$ sudo imaxe lynis status --json4
查看哪些测试被跳过
了解哪些检查被跳过以及原因。
列出被跳过的测试——既包括来自 AWS 基线的,也包括你在 lynis.yml 中添加的——并附上每一项被跳过的原因:
$ sudo imaxe lynis show-skips报告只有在一次 audit 之后才存在。如果 report 或 status 什么都不显示,请先运行 sudo imaxe lynis audit,然后再查看一次。
用法概要 #
imaxe lynis <subcomando> [flags]审计需要 root 权限(使用 sudo),因为它会检查系统的配置、权限与服务。为 report、status 或 show-skips 添加 --json,可获得适用于脚本和面板的机器可读输出。
子命令 #
| 子命令 | 功能 | 相关标志 |
|---|---|---|
| audit | 运行加固审计并汇总结果(指数、告警与建议)。 | --quick |
| report | 显示最新的报告:指数、告警以及带有 test id 的建议。 | --json |
| status | 状态:上次审计的日期、当前指数,以及是否在使用自定义配置文件。 | --json |
| show-skips | 列出被跳过的测试(AWS 基线 + lynis.yml)及其原因。 | --json |
参数与标志 #
| 标志 | 类型 | 默认值 | 说明 |
|---|---|---|---|
| --quick | bool | false | 在 audit 中:跳过最耗时测试的快速检查。用更少的时间给出一个大致的快照。 |
| --json | bool | false | 在 report/status/show-skips 中:将结果以结构化 JSON 输出到 stdout。 |
文件与路径 #
| 路径 | 内容 |
|---|---|
| /etc/imaxe/lynis.yml | 模块配置:配置文件、要跳过的测试(skip_tests)、修复与审计默认值。 |
| /var/log/lynis-report.dat | 最近一次 Lynis 报告的数据:加固指数、告警以及带有 test id 的建议。 |
| /var/log/imaxe/lynis.log | 该模块每次审计运行的结构化记录。 |
lynis.yml 示例:
profile:
deploy: true
skip_tests: []
remediation:
enabled: true
audit:
quick_default: false退出码与日志 #
每次执行都会返回一个退出码,你可以用 echo $? 查看——便于在脚本中串联:
audit。在审阅一次审计时实时跟踪日志:
$ sudo journalctl -u imaxe-lynis -f
$ sudo tail -f /var/log/imaxe/lynis.log故障排查 #
| 现象 | 可能原因 | 解决方法 |
|---|---|---|
| 出现 NOAUDIT(退出码 3) | 在从未审计过的情况下运行了 report 或 status。 | 运行 sudo imaxe lynis audit,然后再查看一次。 |
| 报告耗时很久 | 完整检查还会运行那些耗时的长测试。 | 用 sudo imaxe lynis audit --quick 获取一个快速快照。 |
| 缺少某个预期的检查 | 该测试在跳过列表中。 | 查看 sudo imaxe lynis show-skips 了解原因。 |
| 修改之后指数没有提升 | 报告显示的是最近一次审计,而不是实时状态。 | 重新运行 audit 以重新计算指数。 |
Lynis 模块遇到问题了?
把「imaxe <module> status --json」的输出发给我们,我们会尽快回复你。