manpagez: man pages & more
man afick.conf(5)
Home | html | info | man
afick.conf(5)         User Contributed Perl Documentation        afick.conf(5)




NAME

       afick.conf - Configuration file for afick program


DESCRIPTION

       This is the configuration file for afick software (Another File
       Integrity Checker).  It contains the list  of  files/directories  to
       scan  and which  attribute  to  monitor, the name of database to use
       ...


FILE

       Afick use /etc/afick.conf (Unix) or windows.conf (Windows) as  default
       configuration  file (but you may change it with with -c afick's
       command-line option)


FILE FORMAT

       afick configuration is similar in to  aide's or tripwire's
       configuration file.  With little effort aide.conf  can  be converted to
       afick format (see below portage section).

       general rules :

       o   Afick config is case-sensitive.

       o   Leading and trailing white spaces are ignored.

       o   Blank  lines or lines beginning with # are ignored as comments.

       There are four types of lines in afick :

       "configuration lines"
           general afick parameters

       "alias lines"
           customized user's rules

       "selection lines"
           the list of files to monitor.

       "macros lines"
           batch parameters (Unix cron)


CONFIGURATION LINES

       These lines have the format : "keyword :=  value"

       for now, the available keywords are :

       allow_overload := boolean value
           if set, allow rule overload (the last rule wins), else put a
           warning and keep the first rule.  Default is true.

       archive := path_to_archive_directory
           directory with full path : the archive directory keep all logs, and
           can be used by webmin module.  Default is empty (none).

       database := path_to_database
           name with full path : the database to use.  This parameter is
           necessary.

       debug := level
           set a level of debugging messages, from 0 (none) to 4 (full).
           Default is 0.

       only_suffix := ext1 ext2  ...
           the default behavior is to scan all requested directories, and add
           some exception by rules or with the exclude_* directives. But in
           some cases it is easier to only define which suffixes you want. In
           this way exclude_* are not used, and the database will contain all
           directories, and only files with the given suffix.  This directive
           is empty by default (disabled), and will be interesting on
           operating systems such windows : this will speed the scan, but
           decrease the security.

       exclude_suffix := ext1 ext2  ...
           a list of suffixes (files or directories ending in .ext1 or .ext2
           ...)  to ignore (for example : old  bak tmp ).  This  directive can
           appear several times on a config file to group suffixes.  Default
           is empty.

       exclude_prefix := pre1 pre2 ...
           a list of prefix (files or directories beginning with pre1 or pre2
           ...)  to ignore (for example : tmp  toto ).  This  directive can
           appear several times on a config file to group prefixes.  Default
           is empty.

       exclude_re := pat1 pat2 ...
           a list of regular expressions to ignore.  this apply on full file
           path. examples can be found on  examples section.  this  directive
           can appear several times on a config file to group patterns.
           Default is empty.

       follow_symlinks :=  boolean value
           if set, do checksum on target file, else do checksum on target file
           name.  Default is no.

       history := path_to_history
           history file keep all dates and summary results.  Default is empty
           (none).

       ignore_case := boolean value
           ignore case for file names  (useful on Windows).  Default is no.

       max_checksum_size := numeric value
           checksum is cpu expensive, this value (a file size in bytes)
           indicates to have the checksum on first max_checksum_size first
           bytes, to have afick faster on big files.  WARNING : this option
           will make afick faster but less secure ...  default is 0 (no
           limit).

       report_full_newdel := boolean value
           if  true  report  all  new  files,  else only first directory level
           (avoid too long  outputs).  Default is no.

       report_url := stdout|stderr|null|syslog
           where to send the report, default is stdout.  null means no report.

       report_syslog := boolean value
           If true, send also the report to syslog.  Default is no.

       running_files := boolean value
           warn about "running" files : modified since program begin, default
           is no.

       timing := boolean value
           Print timing statistics  (user  and  system  time), default is no.

       verbose := boolean value
           for debugging purpose, default is no.

       warn_dead_symlinks := boolean value
           warn about dead symbolic links, default is no.

       warn_missing_file := boolean value
           if  true, print a warning message if file selection does not exist,
           default is no.


ATTRIBUTES

       attributes define which parameters to monitor.

       base attributes are :

       a:   atime
           last access time in seconds since the epoch

       b:   blocks
           actual number of blocks allocated

       c:   ctime
           inode change time

       d:   device
           device  number of filesystem, major and minor number

       g:   group
           gid of the file

       i:   inode
           inode number

       m:   mtime
           last modify time since epoch

       md5 : md5 checksum
           the default checksum

       n:   number of hard links
           see ln command

       p:   permissions
           owner, group, other (Unix)

       u:   user
           uid of the file

       s:   file size
           in bytes

       sha1 : sha1 checksum
           optional, more secure than md5, but not available on all hosts


ALIAS LINES

       An alias define a customized set of attributes.  It is used to write
       rules for some kind of files ( see examples)

       the syntax is : "alias_name = alias | attribute [ +attribute ] [ -
       attribute]"

       Afick comes with some pre-defined aliases :

       all for b+c+d+g+i+m+md5+n+p+u+s (all parameter except atime)

       R   for    p+d+i+n+u+g+s+m+c+md5 (for aide compatibility)

       L   for    p+d+i+n+u+g (for aide compatibility)

       P   for    u+g+p+s+n+5 (permission and checksum)

       E   for (empty) (for aide compatibility)


SELECTION LINES

       this lines define the list of files to monitor, and what to monitor.

       the syntax is : "selection_type selection_file attribute_flag"

       selection_type

       There are three types of selection lines  :

       negative
           Lines beginning with "!" : the  file  or  directory  specified   is
           ignored.  attributes flag are not necessary :)

       equals
           Lines beginning with "=" : an  be  used to avoid sub-directory
           scan.

           if the directory ends with a / : scan directory it-self and it's
           files, but not it's sub-directories

           else  :  only  scan directory it-self (no files, no sub-
           directories)

       regular
           others lines are regular selective lines : files are added,
           directories are added  with  their contents (files and sub-
           directories)

       selection_file

       file design a file or directory with it's full path

       file names with blank characters should be quoted

       attribute_flag

       can be :

       an alias name
           example : "all"

       an expression as an alias definition
           example : "all - u"


MACROS LINES

       macros lines begin with @@defines, they are not used by afick it-self,
       but by batch job :

       @@define LINES a_number
           is used to truncate too long mails from cron job

       @@defines MAILTO a_mail_address[,another_mail]
           is used to send cron job output by mail any number of email can be
           set, delimited by comma, without any space

       @@defines MAILHOST an_smtp_server
           define the mail server to send the mail, on windows only

       @@defines VERBOSE bool
           with bool=1 to have a mail each day, and bool=0  to have only mail
           if find changes

       @@defines REPORT bool
           with bool=1 to enable a mail report and bool=0  to disable mail
           report

       @@defines NICE val
           val  is the nice value (see man nice) : 10 is for a normal job, 14
           for a normal cron  job,  19  is  for very low level job

       @@defines BATCH bool
           is used to control afick cron job (for remote users with afick
           webmin  module  for  example)  :  bool=1 allow cron job, bool=0
           stop cron job

       @@defines MOUNT directory
           (optionnal) : specify a directory to mount before the scan and to
           unmount after the directory has to be defined in /etc/fstab file


EXAMPLES

       database := /var/lib/afick/afick
           define the path to database

       All= a+b+c+d+g+i+m+md5+n+p+u+s
           defines  the  alias  "All",  from  base  attributes (could be done
           with "All=all+a" too)

       ETC=All - i -c -a
           define the ETC alias from another one

       !/dev
           ignores the /dev directory structure.

       !/tmp/*.tmp
           exclude files with joker definition

       =/proc/ p+u+g
           scan /proc directory for files, not sub-directories

       =/tmp R
           scan just /tmp, not inside

       /boot/vmlinux* all
           add files with a joker definition

       /etc ETC
           use base attributes, on ETC alias

       /var All - i -c -a
           use modified alias All

       exclude_re := sav$
           exclude files ending with sav (for example toto.rpmsav, which is
           not excluded by "exclude_suffix := sav")

       exclude_re := /tmp$
           exclude all files or directories named tmp (but not files such tmpa
           or atmp as "exclude_prefix := tmp" does)

       exclude_re := \s
           exclude all files or directories containing a space char

       exclude_re := ^/var/log/.*\d
           exclude all files under /var/log directory which contain a numeral
           (example : /var/log/mail/info.1.gz)


GLOBING

       globing character are * and ?

       they  are not used as perl regular expressions, but as the shell can
       use them :

       '?' replace any (one) character

       '*' replace any chain of characters


PORTAGE

       here are some changes from aide :

       directives
           use ":= instead "="

       database syntax
           use pathname syntax instead url syntax

       database number
           no database_out directive : work on only one database

       compression
           no gzip_dbout directive : database is already in binary format

       checksum
           only md5 and sha1 hash : no rmd160, tiger, haval, gost, crc32

       growing size
           no "S" (check for growing size) attribute : I do not know how to
           use and code it


SEE ALSO

       afick(1) for command-line interface syntax

       afick-tk(1) for graphical interface

       afickonfig(1) for a tool to change afick's configuration file

       afick_archive(1) for a tool to manage archive's reports


COPYRIGHT

       Copyright (c) 2002,2003,2004 Eric Gerbier All rights reserved.

       This program is free software; you can redistribute it and/or modify it
       under the terms of the GNU General Public License as published by the
       Free Software Foundation; either version 2 of the License, or (at your
       option) any later version.


AUTHOR

       Eric Gerbier

       you can report any bug or suggest to gerbier@users.sourceforge.net



perl v5.10.0                      2009-07-24                     afick.conf(5)

afick 2.14-1 - Generated Sun Aug 9 09:14:40 CDT 2009
© manpagez.com 2000-2025
Individual documents may contain additional copyright information.