[:ja]CentOS 7 Tripwireインストール方法[:]

[:ja]

  1. tripwireのインストール
    # yum install tripwire
  2. パスフレーズの設定
    # tripwire-setup-keyfiles
    サイトパスフレーズを設定とローカルパスフレーズを設定
  3. tripwireの設定ファイル修正
    #vi /etc/tripwire/twcfg.txt
    LOOSEDIRECTORYCHECKINGを「true」にする。
    REPORTLEVEL を「4」にする。
  4. tripwireの設定ファイルの暗号化する。
    # twadmin -m F -c /etc/tripwire/tw.cfg -S /etc/tripwire/site.key /etc/tripwire/twcfg.txt
  5. tripwireの設定ファイルのテキスト版を削除する。
    # rm -f /etc/tripwire/twcfg.txt
    復活させる場合は(# twadmin –print-cfgfile > /etc/tripwire/twcfg.txt)
  6. ポリシーファイルの最適化スクリプトを作成
    # 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) ;

  7. ポリシーファイルの最適化(存在しないファイルやディレクトリなどをコメントアウト)するためスクリプトの実行。
    # 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ハッシュ値

  8. ポリシーファイルの暗号化
    # twadmin -m P -c /etc/tripwire/tw.cfg -p /etc/tripwire/tw.pol -S /etc/tripwire/site.key /etc/tripwire/twpol.txt.new
  9. ポリシーファイル(テキスト版)を削除
    # 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
  10. ポリシーファイルよりデータベースを作成
    # tripwire -m i -s -c /etc/tripwire/tw.cfg
  11. 設定の反映を確認
    # tripwire -m c -s -c /etc/tripwire/tw.cfg
  12. シェルの作成
    #!/bin/sh
    /usr/sbin/tripwire –check –email-report
  13. cronの設定
    毎日深夜2時に上のシェルを実行するように登録。
    0 2 * * * root /root/bin/tripwire.sh > /dev/null 2>&1
    (/dev/null 2>&1)標準出力をメール送信しない。

[:]

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です