之前讨论过在执行 Debian 或 Ubuntu Linux 发行版的系统上安装 Tripwire,作为检测系统入侵的一种方法,这一次 WordPress 站群美国站群服务器商将继续介绍设定和执行它。
初始化资料库
当停止工作时,将 Tripwire 配置为一个基本配置,稍后根据需要对其进行调整。首先,初始化资料库,这也将标记在配置中也需要调整的问题,这可以通过以下命令来完成:
sudo Tripwire –init
系统将提示输入本地密码才能继续,然后会有大量讯息在萤幕上滚动,要获得问题列表,可以使用–check 标志执行 Tripwire,这将建立大量输出,因此最好将其传输到较少的命令:
sudo sh -c ‘Tripwire –check | less’
问题列在输出的末尾,经过多次滚动之后,这将主要由 Tripwire 试图监控的档案组成,这些档案在系统上并不存在,获取档案列表的一种简单方法是使用 grep 输入 “档名”,然后将输出写入档案:
sudo sh -c ‘Tripwire –check | grep Filename》Tripwire_file_errors’
然后,该档案将成为 Tripwire 试图监控的导致错误的档案列表。然后,可以使用较少的或使用文字编辑器检视此档案:
less Tripwire_file_errors
管理员需要记录所有这些档案,因为需要编辑 Tripwire 策略配置档案来注释匹配行。这将阻止 Tripwire 尝试检查这些档案:
sudo nano /etc/Tripwire/twpol.txt
资料夹
此配置档案首先根据档案的使用方式定义可应用于系统上档案的严重性级别。然后是一组规则,每个规则集被分成两部分。规则括号 “()” 中的第一节提供规则的名称和分配给此规则检测到的更改的严重性。之后,在大括号 “{}” 中,会出现作为该规则一部分监控的档案和目录的列表,以及该档案中允许更改的设定。作为测试中的一个例子,档案/etc/rc.boot 丢失并导致错误,在 twpol.txt 档案中,可以在 “启动指令码” 部分找到它,该行如下所示:
/etc/rc.boot -》$(SEC_BIN);
要对其进行注释,只需在行的开头新增一个杂凑符号 “#”,如下所示:
# /etc/rc.boot -》$(SEC_BIN);
对于错误列表中可以找到匹配的所有档案,需要执行此操作。
浏览完列表后,可能会发现/proc 中有许多档案会导致错误,例如测试示例:
Filename: /proc/1414/task/1414/fd/3
这将引用正在执行的程序的档案描述符。当程序访问各种档案时,它们一直在变化;每次执行新的应用程式时,它都会启动一个新的程序,因此监控这些程序会标记出大量错误的肯定响应。这里的站群解决方案是在引用要检查的 /proc 中的位置时要精确得多。在配置档案中,它在 “装置和核心资讯” 下被引用,在我的档案中简单地引用了 /dev 和/proc 。这又带来了另一个错误:在 Debian 和 Ubuntu 系统上/dev/pts 与/dev 在不同的档案系统上,因此,Tripwire 只会在特别要求时检查它。因此,站群解决方案是将此部分改为:
{
/dev -> $(Device);
/dev/pts -> $(Device);
#/proc -> $(Device);
/proc/cpuinfo -> $(Device);
/proc/devices -> $(Device);
/proc/dma -> $(Device);
/proc/filesystems -> $(Device);
/proc/interrupts -> $(Device);
/proc/ioports -> $(Device);
/proc/kcore -> $(Device);
/proc/kmsg -> $(Device);
/proc/loadavg -> $(Device);
/proc/locks -> $(Device);
/proc/meminfo -> $(Device);
/proc/misc -> $(Device);
/proc/modules -> $(Device);
/proc/mounts -> $(Device);
/proc/net -> $(Device);
/proc/scsi -> $(Device);
/proc/self -> $(Device);
/proc/stat -> $(Device);
/proc/sys -> $(Device);
/proc/tty -> $(Device);
/proc/uptime -》$(Device);
}
最后一步是注释目录 “/var/lock” 和 “/var/run” 的行,因为这些行将在正常系统操作过程中更改,并且除非特别想知道程序何时更改 ID 等,否则不必监控这些资讯。通过对配置档案所做的更改,可以再次储存更改,然后重新加密配置。
sudo twadmin -m P /etc/Tripwire/twpol.txt
同样,还需要那个网站的密码。对策略进行加密以供使用后,可以重新初始化资料库:
sudo Tripwire –init
现在,如果通过检查执行 Tripwire,那么输出应该更小,错误应该消失。此时,已经为 Tripwire 配置了系统所需的基础知识。管理员应该能够从配置档案中看到如何著手建立用于监控系统上其他档案的新区段,例如检查网站的档案,以确保它们没有被意外地更改。虽然配置好了 Tripwire,但是还有工作没有完成。下一次的内容 WordPress 站群美国站群服务器商将研究如何让 Tripwire 自动检查系统是否有入侵,并通过电子邮件向管理员传送任何报告。