[:ja]
- tripwireのインストール
# yum install tripwire - パスフレーズの設定
# tripwire-setup-keyfiles
サイトパスフレーズを設定とローカルパスフレーズを設定 - tripwireの設定ファイル修正
#vi /etc/tripwire/twcfg.txt
LOOSEDIRECTORYCHECKINGを「true」にする。
REPORTLEVEL を「4」にする。 - tripwireの設定ファイルの暗号化する。
# twadmin -m F -c /etc/tripwire/tw.cfg -S /etc/tripwire/site.key /etc/tripwire/twcfg.txt - tripwireの設定ファイルのテキスト版を削除する。
# rm -f /etc/tripwire/twcfg.txt
復活させる場合は(# twadmin –print-cfgfile > /etc/tripwire/twcfg.txt) - ポリシーファイルの最適化スクリプトを作成
# vi /etc/tripwire/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) = /^HOSTNAME\s*=\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 /etc/tripwire/twpolmake.pl /etc/tripwire/twpol.txt > /etc/tripwire/twpol.txt.newReadOnly 読み取り専用ファイル
プロパティ値+pinugtsdbmCM-rlacSHと同じ意味を持つ
Dynamic 可変ファイル
プロパティ値+pinugtd-srlbamcCMSHと同じ意味を持つ
Growing サイズが増加するファイル
プロパティ値+pinugtdl-srbamcCMSHと同じ意味を持つ
Device デバイスファイル
プロパティ値+pugsdr-intlbamcCMSHと同じ意味を持つ
IgnoreAll すべてのプロパティを無視する
プロパティ値-pinugtsdrlbamcCMSHと同じ意味を持つ
IgnoreNone すべてのプロパティを有効にする
プロパティ値+pinugtsdrbamcCMSH-lと同じ意味を持つrulename = “Web contents”,
emailto = www@atmarkit.example.co.jp,
severity = 100– プロパティをチェックしない
+ プロパティをチェックする
a アクセス時刻(ファイルへのアクセス時刻が変更)
b ブロック割り当て番号
c iノードの時刻
d iノードが存在するデバイスのID
g ファイルのグループID(gid)
i iノード番号
l サイズが増加したファイル
m 修正時刻(ファイルの修正時刻が変更)
n リンク番号(iノードの参照回数)
p ファイルパーミッション
r iノードによって示されるデバイスID
s ファイルサイズ
t ファイルタイプ
u ファイルの所有者ID(uid)
C CRC-32ハッシュ値
H Havalハッシュ値
M MD5ハッシュ値
S SHAハッシュ値 - ポリシーファイルの暗号化
# twadmin -m P -c /etc/tripwire/tw.cfg -p /etc/tripwire/tw.pol -S /etc/tripwire/site.key /etc/tripwire/twpol.txt.new - ポリシーファイル(テキスト版)を削除
# rm -f /etc/tripwire/twpol.txt*
ポリシーファイルを復活させる場合
(# twadmin -m p -c /etc/tripwire/tw.cfg -p /etc/tripwire/tw.pol -S /etc/tripwire/site.key > /etc/tripwire/twpol.txt)
再暗号化
# twadmin -m P -c /etc/tripwire/tw.cfg -p /etc/tripwire/tw.pol -S /etc/tripwire/site.key /etc/tripwire/twpol.txt - ポリシーファイルよりデータベースを作成
# tripwire -m i -s -c /etc/tripwire/tw.cfg - 設定の反映を確認
# tripwire -m c -s -c /etc/tripwire/tw.cfg - シェルの作成
#!/bin/sh
/usr/sbin/tripwire –check –email-report - cronの設定
毎日深夜2時に上のシェルを実行するように登録。
0 2 * * * root /root/bin/tripwire.sh > /dev/null 2>&1
(/dev/null 2>&1)標準出力をメール送信しない。
[:]