Linux System Integrity Monitor - Installation and Configuration Guide
SIM - System Integrity Monitor
# ./setup
-i Install
-q Quick install
-u Uninstall
-c Install/Uninstall cronjob
--------
Paths to pertent files for SIM are (defaults):
- Executable: /usr/local/sim/sim
- Executable symlink: /usr/local/sbin/sim
- Config file: /usr/local/sim/conf.sim
- Autoconf script: /usr/local/sim/autoconf
- Autoconf symlink: /usr/local/sbin/sim-autoconf
3) Configuration:
SIM comes with a well commented configuration file to make modifications
as easy as possible. As well their is also a 'autoconf' script that can be
used to 'walk' you through the configuration of SIM.
The autoconf script is perhaps the best method to configure SIM to meet your
needs. The script is located in, by default: /usr/local/sim/autoconf
# /usr/local/sim/autoconf
or
# /usr/local/sbin/sim-autoconf
Running the script will begin the autoconf process. This script is also run now
from the 'setup' script when using the normal '-i' install method. The alternate
'-q' quick install method does not automaticly run the autoconf script.
If you feel the need to manualy edit the conf.sim file it is easily done. The
default location of conf.sim is: /usr/local/sim/conf.sim
It is strongly encouraged that you take the time to read the comments in the
conf file and edit it to your needs. If you use pico as your editor please be
sure to start it with the -w argument to stop line wrapping.
# pico -w /usr/local/sim/conf.sim
4) Running SIM:
Once SIM is configured, you should be able to run it from either
'/usr/local/sim/sim' or '/usr/local/sbin/sim'. SIM has a few command line
arguments that should be simple to comprehend.
Running 'sim' with no arguments, will display all availible arguments:
-q Quiet mode
-v Verbose mode
-c Clear data & log files
-l Display log file
-s Display status information
-u Check for SIM updates
-j Install/Remove SIM cronjob
Ideally once SIM is configured it is best to run from a cronjob. The 'setup'
script provides a feature to toggle the SIM cronjob, simple run the -c option.
# ./setup -c
As of SIM version 1.7 you can also run the main SIM script with the '-j'
argument to toggle the cronjob.
# /usr/local/sbin/sim -j
This feature 'toggles' the cronjob for sim - so if it is already setup in
crontab it will remove it and vise-versa. A copy of crontab is backed up to,
/etc/crontab.bk
Alternativly if you feel the need to 'do it yourself', you can add the below
entry or equivilant to /etc/crontab - to have sim run once every 5 minutes.
# Run SIM every 5 minutes
*/5 * * * * /usr/local/sim/sim -q >> /dev/null
5) Comments/Questions:
If you have any comments, questions, death threats or presents for me, send
them to:or
A typical installation session
SIM 2.5-3
Creating installation paths: [##########]
Installing SIM 2.5-3 to /usr/local/sim: [##########]
SIM 2.5-3 installation completed, related notes:
Executable: /usr/local/sim/sim
Executable symlink: /usr/local/sbin/sim
Config file: /usr/local/sim/conf.sim
Autoconf script: /usr/local/sim/autoconf
Autoconf symlink: /usr/local/sbin/sim-autoconf
Cronjob setup: /usr/local/sim/sim -j
SIM 2.5-3 must now be configured for use on this system, Press
return to run the autoconf script (/usr/local/sim/autoconf).
SIM 2.5-3 Auto-Config Script
All questions default to value in brackets if no answer is given. If you
make a typo during the autoconf process, hit CTRL+C (^C) to abort and
rerun the autoconf script (/usr/local/sim/autoconf).
The below are general configuration options for SIM:
press return to continue...
SIM 2.5-3 Auto-Config Script
All questions default to value in brackets if no answer is given. If you
make a typo during the autoconf process, hit CTRL+C (^C) to abort and
rerun the autoconf script (/usr/local/sim/autoconf).
The below are general configuration options for SIM:
press return to continue...
Where is SIM installed ?
[/usr/local/sim]:
Where should the sim.log file be created ?
[/usr/local/sim/sim.log]:
Max size of sim.log before rotated ? (value in KB)
[128]:2048
What is the location of your kernel log ?
Found kernel log at /var/log/messages
Where should alerts be emailed to ? (e.g: root, user@domain)
[root]:
Disable alert emails after how many events, to avoid email flood ?
(Note: events stats are cleared daily)
[8]:20
The below are configuration options for Service modules:
press return to continue...
...............
The below are configuration options for System modules:
press return to continue...
Enable NETWORK monitoring ? (true=enable, false=disable)
[false]:true
interface to monitor ?
[eth0]:
Path to NETWORK init script ?
Found service init script at /etc/init.d/network
Enable LOAD monitor ? (true=enable, false=disable)
[false]:true
Load level before status condition 'warning' ?
[25]:
Load level before status condition 'critical' ?
[45]:
Enable a global (wall) message at status condition 'warning' & 'critical' ?
[false]:true
Renice services at status condition 'warning' or 'critical' ?
(3 values - warn, crit, false - false=disabled)
[false]:true
Stop nonessential services at status condition 'warning' or 'critical' ?
(3 values - warn, crit, false - false=disabled)
[false]:warn
Reboot system on status condition 'warning' or 'critical' ?
(3 values - warn, crit, false - false=disabled)
[false]:crit
Configuration completed, saving conf.sim...
Done, conf.sim saved to /usr/local/sim.
CODE
CODE
1.1) Features:
- Service monitoring of HTTP, FTP, DNS, SSH, MYSQL & more
- Event tracking and alert system
- Auto restart ability for downed services
- Checks against network sockets & process list to ensure services are online
- HTTP log size monitor, to avoid segfaults from apache due to large logs
- URL Aware monitoring, to ensure HTTP does not 'lockup'
- System load monitor with customizable warning levels, actions, and more...
- Informative command line status display
- Easily customizable configuration file
- Auto configuration script
- Auto cronjob setup feature
- Caching feature for ps/netstat output, to ease on runtime load
- Simple & Informative installation script
- Integrated auto-update feature
- And more...