[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]
redhat tripwire policy file cleaneruper
- From: Bret Hughes <bhughes elevating com>
- To: redhat-list <redhat-list redhat com>,shell scripting moongroup <shell scripting moongroup com>
- Subject: redhat tripwire policy file cleaneruper
- Date: Thu Jan 30 16:04:01 2003
I have been upgrading a lot of machines lately and found myself wading
through lists of files not found as I was getting tripwire setup using
the default policy file distributed with RHL 7.3 So I wrote the perl
script below and thought I would share it with the world.
It is almost too simple to expect that anyone who has done more than two
of these has not done something similar but hey who knows?
Enjoy.
Bret
#!/usr/bin/perl -w
# twpolclean.pl
# Author Bret Hughes bhughes elevating com
# Use as you will but without guarantee or warranty :)
# This script is designed to take the default redhat tripwire policy
# file that contains everything and comment out those files that do
# not exist on the machine. As the the twpol.txt file says in its
# comments, it is designed for an everything install and can be a
# pain to clean up enough to run on a system that does not have
# everything.
# What this script does is read the tripwire pol.txt file and for each
# line that looks like a file name, see if the file exists on the
# system.
# If it does not, comment it out. All other lines get written to the
# outfile unchanged
# copy to /etc/tripwire/twpol.txt ( don't forget to back up the old
# one first) and you should be good to go with the tw installation
use strict;
# change the vars twpolfile and newtwpolfile to fit your configuration
my $twpolfile = "/etc/tripwire/twpol.txt";
my $newtwpolfile = "/root/new.twpol.txt";
open (POL, "<$twpolfile") or die " could not open file $!\n";
open (NEWPOL, ">$newtwpolfile") or die "could not open file \n";
foreach my $line (<POL>){
if ($line =~ /^\s*\/.*/){
# this is a file name lets look and see if it exists
my ($file, $rest) = split " ", $line;
# uncomment the print statements if you want to see what files are
# processed
# print "file name portion is $file\n";
if (! -e $file){
# print "******* file does not exist $file \n";
$line = "#$line";
}
}
print NEWPOL $line;
}
close POL;
close NEWPOL;
[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]