#
as their 1st non-blank character. These lines
are ignored. Furthermore, initial and trailing blanks on its lines are
ignored.
This expansion contains the following key terms:
SSH-based
: The file integrity scan is (usually) performed over an
ssh-connection. Usually the computer being scanned (called the client) and
the computer initiating the scan (called the controller
) are different
computers.
Trust Enforcement
: following the scan, `trust' is enforced in the
client, due to the integrity of its files.
Locally Trusted Host
: the client apparently trusts the controller
to use an ssh-connection to perform commands on it. The client therefore
locally trusts the controller. Hence, locally trusted host.
stealth is based on an idea by Hans Gankema and Kees Visser, both at the Center for Information Technology of the University of Groningen.
stealth's main task is to perform file integrity tests. However, the testing will leave no sediments on the tested computer. Therefore, stealth has stealthy characteristics. I consider this an important security improving feature of stealth.
The controller itself only needs two kinds of outgoing services: ssh(1) to reach its clients, and some mail transport agent (e.g., sendmail(1)) to forward its outgoing mail to some mail-hub.
Here is what happens when stealth is run:
--keep-alive
or --repeat <seconds>
is given, stealth will run as a backgrond process, displaying the process
ID of the background process. With --repeat <seconds>
the scan will be
rerun every <seconds>
seconds. The number of seconds until the next rerun
will be at least 60. However, using the --rerun
option a background
stealth process may always be goated into its next scan. When
--keep-alive
is specified the scan will be performed just once, whereafter
stealth will wait until it is reactivated by another run of stealth,
called using the --rerun <pid>
command-line option.
-printf
method to produce file-integrity related statistics. Most of these programs
write file names at the end of generated lines. This characteristic is used by
an internal routine of stealth to detect changes in the generated output,
which could indicate some harmful intent, like an installed root-kit.
Alternatively, the command-line options --reload, --rerun, --suppress,
--resume
and --terminate
may be provided to communicate with a running
stealth process started earlier using either the --keep-alive
or
--repeat
option. For these options one argument must be provided: the
pathname to a pid-file of a running s().
--reload <pid>
command-line option, the
stealth process running at process-ID <pid>
will reload its configuration
and skip-files, which is then immediately followed by another stealth
scan.
--rerun <pid>
command-line option, the
stealth process running at process-ID <pid>
will perform another
scan.
--terminate <pid>
command-line option, the
stealth process running at process-ID <pid>
is terminated.
The options --suppress
and --rerun
(see section 5.7) were
implemented to allow safe rotations of stealth's report file.
The integrity of the archive stealth-2.11.04.tar.gz
can be verified as
follows:
stealth-2.11.04.dsc
. This file contains a PGP signed
sha1sum(1) signature of the tar.gz
archive. The PGP sigature was
provided by me using gpg(1) (pgp(1)).
stealth-2.11.04.tar.gz
archive. Its value should match the SHA1 checksum that is mentioned in the
stealth-2.11.04.dsc
file. If not, the stealth-2.11.04.tar.gz
archive has been compromised, and should not be used.
http://pgp.surfnet.nl:11371/
DF32 13DE B156 7732 E65E 3B4D 7DB2 A8BE EAE4 D8AAand it has been electronically signed by, e.g., the University of Groningen's PGP-certificate authority. If in doubt, contact me to verify you have the right key.
stealth-2.11.04.dsc
. With gpg(1) this can be done by the command
gpg --verify stealth-2.11.04.dsc
gpg: Signature made Fri Jun 1 10:57:41 2012 CEST using DSA key ID EAE4D8AA gpg: Good signature from "Frank B. Brokken <f.b.brokken@rug.nl>"