在下一节里,我们将浏览Lynis审计输出的其他不同部分,这样你会对如何正确运用Lynis来审计你的系统有一个更好的理解。那么就让我们来首先看看如何处理Lynis所发出的警告吧。
步骤3 修复Lynis的审计警告
Lynis的审计输出并不总是带有警告。但是当你读到有警告部分的时候,你就会需要知道如何解决这些引发警告的根源。
警告一般罗列在结果部分的后面。每个警告都以警告性文本本身开始,并在同一行的括号中列出生成警告的测试项名称。而下一行则包含一个可能的建议性解决方案。最后一行是一个安全控制的URL,你可能从那里发现一些有关该警告的指导说明。不过,URL并不总能提供解释,因此你可能需要做一些进一步的研究。
以下输出源自在本文所涉及服务器上执行过的一次Lynis审计的警告部分。让我们浏览一下每个警告,来看看如何对其进行解决或改正:
Output
Warnings (3):
----------------------------
! Version of Lynis is very old and should be updated [LYNIS]
https://cisofy.com/controls/LYNIS/
! Reboot of system is most likely needed [KRNL-5830]
- Solution : reboot
https://cisofy.com/controls/KRNL-5830/
! Found one or more vulnerable packages. [PKGS-7392]
https://cisofy.com/controls/PKGS-7392/
第一个警告是说Lynis需要被更新。这也意味着根据该审计所使用的Lynis版本,其结果可能并不完整。正如步骤2所示,如果我们事先执行了基本的版本检查,那么这是完全可以避免的。可见,此修复非常容易,就是更新Lynis。
第二个警告表明服务器需要被重启。这可能是因为系统最近的更新里包含了内核的升级。这里的解决方案也就是直接重启系统。
在深究任何警告或是测试结果时,你可以通过查询Lynis的ID来得到更多的关于测试的信息。其对应的命令形式为:
$ sudo lynis show details test-id
因此对于第二个ID为KRNL-5830的警告,我们可以运行这样的命令:
$ sudo lynis show details KRNL-5830
如下是具体测试的输出,它能让你对Lynis的每个测试的执行过程有所认识。在此输出中,Lynis甚至为其警告项给出了一些具体的信息:
Output
2017-03-21 01:50:03 Performing test ID KRNL-5830 (Checking if system is running on the latest installed kernel)
2017-03-21 01:50:04 Test: Checking presence /var/run/reboot-required.pkgs
2017-03-21 01:50:04 Result: file /var/run/reboot-required.pkgs exists
2017-03-21 01:50:04 Result: reboot is needed, related to 5 packages
2017-03-21 01:50:04 Package: 5
2017-03-21 01:50:04 Result: /boot exists, performing more tests from here
2017-03-21 01:50:04 Result: /boot/vmlinuz not on disk, trying to find /boot/vmlinuz*
2017-03-21 01:50:04 Result: using 4.4.0.64 as my kernel version (stripped)
2017-03-21 01:50:04 Result: found /boot/vmlinuz-4.4.0-64-generic
2017-03-21 01:50:04 Result: found /boot/vmlinuz-4.4.0-65-generic
2017-03-21 01:50:04 Result: found /boot/vmlinuz-4.4.0-66-generic
2017-03-21 01:50:04 Action: checking relevant kernels
2017-03-21 01:50:04 Output: 4.4.0.64 4.4.0.65 4.4.0.66
2017-03-21 01:50:04 Result: Found 4.4.0.64 (= our kernel)
2017-03-21 01:50:04 Result: found a kernel (4.4.0.65) later than running one (4.4.0.64)
2017-03-21 01:50:04 Result: Found 4.4.0.65
2017-03-21 01:50:04 Result: found a kernel (4.4.0.66) later than running one (4.4.0.64)
2017-03-21 01:50:04 Result: Found 4.4.0.66