Linux Logging
Linux Logging
Outline
• Log files
– What need to be logged
– Logging policies
– Finding log files
• Syslog: the system event logger
– how syslog works
– its configuration file
– the software that uses syslog
– debugging syslog
What to be logged?
• Depends on :
– how much disk space you have
– how security-conscious you are
• Whatever scheme you select, regular
maintenance of log files should be
automated using cron (chap 10, periodic process)
Throwing away log files
• not recommend
– security problems ( accounting data and log
files provide important evidence of break-ins)
– helpful for alerting you to hardware and
software problems.
• In general, keep one or two months
– in a real world, it may take one or two weeks
for SA to realize that site has been
compromised by a hacker and need to review
the logs
Throwing away (cont.)
Some daemons keep their log files open all the time,
this script can’t be used with them. To install a new
log file, you must either signal the daemon, or kill
and restart it.
#! /bin/sh
cd /var/log
mv logfile.2.Z logfile.3.Z
mv logfile.1.Z logfile.2.Z
mv logfile logfile.1
cat /dev/null > logfile
kill -signal pid
compress logfile.1
reads consults
syslogd /etc/syslog.conf
dispatches
• Identify
– source -- the program (‘facility’) that is sending
a log message
– importance -- the messages’s severity level
– eg. mail.info /var/log/maillog
• Syntax
– facility.level
– facility names and severity levels must chosen
from a list of defined values
Configuration file
Facility names
# important messages
*.warning;daemon,auth.info /var/adm/messages
# printer errors
lpr.debug /var/adm/lpd-errs
# network client, typically forwards serious messages to
# a central logging machine
# emergencies: tell everyone who is logged on
*.emerg;user.none *
#include <syslog.h>
main ( )
{
openlog ( “SA-BOOK”, LOG_PID, LOG_USER);
syslog ( LOG_WARNING, “Testing …. “);
closelog ( );
}