如何在Debian 10上安装和配置Tripwire IDS

如何在Debian 10上安装和配置Tripwire IDS

Tripwire是一个免费的开源Linux入侵检测系统。 用于检测和报告Linux上对文件和目录的未经授权的更改。它还通过电子邮件发送有关文件/目录更改的警报。 Tripwire通过将当前文件系统状态与已知的基准状态进行比较来工作,并报告是否已检测到更改。

这篇文章将向您展示如何在Debian 10上安装和配置Tripwire。

先决条件

  • 运行Debian 10的服务器。
  • 超级用户密码由服务器组成。

入门

首先,通过运行以下命令将系统软件包更新为更新的版本:

apt-get update -y

更新所有软件包后,即可继续进行下一步。

安装Tripwire

默认情况下,Tripwire软件包在Debian 10默认存储库中可用。您可以使用以下命令进行安装:

apt-get install tripwire -y

在安装过程中,系统将提示您选择电子邮件配置,如下所示。

选择所需的选项, 进入..系统将提示您设置系统电子邮件名称,如下所示。

后缀设置

输入系统电子邮件名称, 进入..系统将提示您创建站点密钥密码,如下所示。

Tripwire密码

[はい]选择, 进入..系统将提示您重新构建Tripwire配置文件,如下所示。

重建配置文件

[はい]选择, 进入..系统将提示您重新构建Tripwire策略文件,如下所示。

重建策略文件

[はい]选择, 进入..系统将提示您输入站点密钥密码,如下所示。

设置站点密钥

输入密码 进入..系统将提示您设置本地密钥密码,如下所示。

设置本地密码

输入密码 进入.. 安装Tripwire后,您将看到以下屏幕。广告

Tripwire安装完成

请点击 好的 单击按钮完成安装。

配置Tripwire

接下来,您需要生成一个Tripwire密钥并初始化数据库。首先,将目录更改为Tripwire并使用以下命令列出所有密钥和文件。

cd /etc/tripwire/ls

您应该看到以下输出:

debian10-local.key  site.key  tw.cfg  twcfg.txt  tw.pol  twpol.txt

然后编辑Tripwire配置文件,并将REPORT LEVEL设置为4。

nano /etc/tripwire/twcfg.txt

更改以下行。

REPORTLEVEL   =4

完成后,保存文件并关闭它。

然后使用以下命令生成新的配置文件。

twadmin -m F -c tw.cfg -S site.key twcfg.txt

系统将提示您输入站点密码,如下所示。

Please enter your site passphrase: 
Wrote configuration file: /etc/tripwire/tw.cfg

然后创建一个twpolmake.pl文件以优化Tripwire策略。

nano twpolmake.pl

添加以下行。

#!/usr/bin/perl
$POLFILE=$ARGV[0];

open(POL,"$POLFILE") or die "open error: $POLFILE" ;
my($myhost,$thost) ;
my($sharp,$tpath,$cond) ;
my($INRULE) = 0 ;

while () {
    chomp;
    if (($thost) = /^HOSTNAMEs*=s*(.*)s*;/) {
        $myhost = `hostname` ; chomp($myhost) ;
        if ($thost ne $myhost) {
            $_="HOSTNAME="$myhost";" ;
        }
    }
    elsif ( /^{/ ) {
        $INRULE=1 ;
    }
    elsif ( /^}/ ) {
        $INRULE=0 ;
    }
    elsif ($INRULE == 1 and ($sharp,$tpath,$cond) = /^(s*#?s*)(/S+)b(s+->s+.+)$/) {
        $ret = ($sharp =~ s/#//g) ;
        if ($tpath eq '/sbin/e2fsadm' ) {
            $cond =~ s/;s+(tune2fs.*)$/; #$1/ ;
        }
        if (! -s $tpath) {
            $_ = "$sharp#$tpath$cond" if ($ret == 0) ;
        }
        else {
            $_ = "$sharp$tpath$cond" ;
        }
    }
    print "$_n" ;
}
close(POL) ;

保存并关闭文件,然后使用以下命令创建配置文件。

perl twpolmake.pl twpol.txt > twpol.txt.new twadmin -m P -c tw.cfg -p tw.pol -S site.key twpol.txt.new

您应该看到以下输出:

Please enter your site passphrase: 
Wrote policy file: /etc/tripwire/tw.pol

然后使用以下命令创建一个Tripwire数据库:

tripwire -m i -s -c tw.cfg

您应该看到以下输出:

Please enter your local passphrase: 
### Warning: File system error.
### Filename: /var/lib/tripwire/debian10.twd
### No such file or directory
### Continuing...

您还可以使用以下命令查看生成的数据库:

twprint -m d -d /var/lib/tripwire/debian10.twd

您应该看到以下输出:

Open Source Tripwire(R) 2.4.3.7 Database

Database generated by:        root
Database generated on:        Sun 09 May 2021 08:39:18 AM UTC
Database last updated on:     Never

===============================================================================
Database Summary: 
===============================================================================

Host name:                    debian10
Host IP address:              45.58.38.142
Host ID:                      None
Policy file used:             /etc/tripwire/tw.pol
Configuration file used:      /etc/tripwire/tw.cfg
Database file used:           /var/lib/tripwire/debian10.twd
Command line used:            tripwire -m i -s -c tw.cfg 

===============================================================================
Object Summary: 
===============================================================================

-------------------------------------------------------------------------------
# Section: Unix File System
-------------------------------------------------------------------------------

要更新Tripwire数据库,请运行以下命令:

tripwire --update --accept-all

您应该获得以下输出:

### Error: File could not be opened.
### Filename: /var/lib/tripwire/report/debian10-20210509-084141.twr
### No such file or directory
### Exiting...

然后使用以下命令测试Tripwire:

tripwire -m c -s -c /etc/tripwire/tw.cfg

您应该看到以下输出:

Open Source Tripwire(R) 2.4.3.7 Integrity Check Report

Report generated by:          root
Report created on:            Sun 09 May 2021 08:42:15 AM UTC
Database last updated on:     Never

===============================================================================
Report Summary:
===============================================================================

Host name:                    debian10
Host IP address:              45.58.38.142
Host ID:                      None
Policy file used:             /etc/tripwire/tw.pol
Configuration file used:      /etc/tripwire/tw.cfg
Database file used:           /var/lib/tripwire/debian10.twd
Command line used:            tripwire -m c -s -c /etc/tripwire/tw.cfg 

===============================================================================
Rule Summary: 
===============================================================================

-------------------------------------------------------------------------------
  Section: Unix File System
-------------------------------------------------------------------------------

  Rule Name                       Severity Level    Added    Removed  Modified 
  ---------                       --------------    -----    -------  -------- 
  Other binaries                  66                0        0        0        
  Tripwire Binaries               100               0        0        0        
  Other libraries                 66                0        0        0        
  Root file-system executables    100               0        0        0        
* Tripwire Data Files             100               1        0        0        
  System boot changes             100               0        0        0        
  Root file-system libraries      100               0        0        0        
  (/lib)
  Critical system boot files      100               0        0        0        
* Other configuration files       66                0        0        1        
  (/etc)
  Boot Scripts                    100               0        0        0        
  Security Control                66                0        0        0        
  Root config files               100               0        0        0        
  Devices & Kernel information    100               0        0        0        
  (/dev)
  Invariant Directories           66                0        0        0        

Total objects scanned:  27975
Total violations found:  2

===============================================================================
Object Summary: 
===============================================================================

-------------------------------------------------------------------------------
# Section: Unix File System
-------------------------------------------------------------------------------

-------------------------------------------------------------------------------
Rule Name: Tripwire Data Files (/var/lib/tripwire/debian10.twd)
Severity Level: 100
-------------------------------------------------------------------------------

默认情况下,Tripwire报告文件位于/ var / lib / tripwire / report /中。

ls /var/lib/tripwire/report/

输出:

debian10-20210509-084215.twr

您可以使用以下命令查看此报告:

twprint -m r -t 4 -r /var/lib/tripwire/report/debian10-20210509-084215.twr

检查Tripwire IDS

此时,已安装和配置Tripwire。然后检查Tripwire是否正常工作。

首先,使用以下命令在系统上创建一些文件:

touch fil1 file2 file3 file4 file5

然后运行Tripwire以查看Tripwire是否检测到这些文件。

tripwire --check --interactive

以下输出显示了新创建的文件。

Open Source Tripwire(R) 2.4.3.7 Integrity Check Report

Report generated by:          root
Report created on:            Sun 09 May 2021 08:46:36 AM UTC
Database last updated on:     Never

===============================================================================
Report Summary:
===============================================================================

Host name:                    debian10
Host IP address:              45.58.38.142
Host ID:                      None
Policy file used:             /etc/tripwire/tw.pol
Configuration file used:      /etc/tripwire/tw.cfg
Database file used:           /var/lib/tripwire/debian10.twd
Command line used:            tripwire --check --interactive

===============================================================================
-------------------------------------------------------------------------------
Rule Name: Other configuration files (/etc)
Severity Level: 66
-------------------------------------------------------------------------------

Remove the "x" from the adjacent box to prevent updating the database
with the new values for this object.

Modified:
[x] "/etc/tripwire"

-------------------------------------------------------------------------------
Rule Name: Root config files (/root)
Severity Level: 100
-------------------------------------------------------------------------------

Remove the "x" from the adjacent box to prevent updating the database
with the new values for this object.

Added:
[x] "/root/file4"
[x] "/root/file3"
[x] "/root/fil1"
[x] "/root/file2"
[x] "/root/file5"

Modified:
[x] "/root"

===============================================================================

您还可以稍后使用以下命令查看生成的报告:

twprint --print-report --twrfile /var/lib/tripwire/report/debian10-20210509-084636.twr

自动执行Tripwire报告

您还可以将cron作业配置为在特定时间运行Tripwire。您可以使用以下命令运行它:

crontab -e

添加以下行。

00 06 * * * /usr/sbin/tripwire --check

完成后,保存文件并关闭它。

上面的文件每天早上06:00 AM运行Tripwire。您可以在以下位置查看生成的报告。 / var / lib / tripwire / report /..

结论

恭喜!您已在Debian 10上成功安装和配置Tripwire IDS。希望这可以帮助您查看系统上哪些文件或目录已更改。

Source

Sidebar