配置Linux日志文件

转载 2007年09月16日 20:49:00

 

作者:刘志勇 郭聪辉

日志也应该是用户注意的地方。不要低估日志文件对网络安全的重要作用,因为日志文件能够详细记录系统每天发生的各种各样的事件,用户可以通过日志文件检查错误产生的原因,或者在受到攻击、被入侵时追踪攻击者的踪迹。日志的两个比较重要的作用是审核和监测。配置好的Linux的日志非常强大。对于Linux系统而言,所有的日志文件在/var/log下。默认情况下,Linux的日志文件没有记录FTP的活动。用户可以通过修改/etc/ftpacess让系统记录FTP的一切活动。

  /etc/syslog.conf的格式

  Linux系统的日志文件是可以配置的,在前面的章节中已经介绍了如何定制Apache、wu-ftpd、Sendmail的日志文件。Linux系统的日志文件是由/etc/syslog.conf决定的,用户有必要花时间仔细配置一下/etc/syslog.conf。下面是/etc/syslog.conf的范例:

# Log all kernel messages to the kernlog.
# Logging much else clutters up the screen.
kern.*				/var/log/kernlog

# Log anything (except mail) of level info or higher.
# Don't log private authentication messages!
*.info;mail.none;news.none;authpriv.none;cron.none
/var/log/messages
*.warning				/var/log/syslog
# The authpriv file has restricted access.
authpriv.*		   /var/log/secure

# Log all the mail messages in one place.
mail.*				/var/log/maillog

# Log cron stuff
cron.*				/var/log/cron

# Everybody gets emergency messages, plus log them on another
# machine.
*.emerg
# Save mail and news errors of level err and higher in a
# special file.
uucp,news.crit			/var/log/spooler

# Save boot messages also to boot.log
local7.*				/var/log/boot.log

# INN
news.=crit                  /var/log/news/news.crit
news.=err                   /var/log/news/news.err
news.notice                            		/var/log/news/news.notice


  可以看出,该配置文件的每一行的第一个字段列出要被记录的信息种类,第二个字段则列出被记录的位置。第一个字段使用下面的格式:facility.level[;facility.level…]

  此处的faciity是产生信息的系统应用程序或工具,level则是这个信息的重要程度。level的重要程度由低到高依次是:debug(调试消息)、info(一般消息)、notice(值得注意的消息)、warning(警告)、err(一般性错误)、crit(严重错误)、alert(或emerg,紧急情况)。facility包含有:auth(认证系统,如login或su,即询问用户名和口令)、cron(系统执行定时任务时发出的信息)、daemon(某些系统的守护程序的syslog,如由in.ftpd产生的log)、kern(内核的信息)、lpr(打印机的信息)、mail(处理邮件的守护进程发出的信息)、mark(定时发送消息的时标程序)、news(新闻组的守护进程的信息)、user(本地用户的应用程序的信息)、uucp(uucp子系统的信息)和“*”(表示所有可能的facility)。

  将日志文件记录到远程主机

  如果有另一个Linux或UNIX系统,那么可以配置日志文件,让其把消息发到另外一个系统并记录下来。这也是为什么上面的所有日志文件都记录了主机名的原因。要实现这个功能,在该配置文件中,指定一个记录动作,后面接一个由“@”开头的远程系统的主机名,如下例:*.warn;authpriv.notice;auth.notice @bright.hacker.com.cn

  同时,还要将接受消息的目的系统设置为允许这种操作。此例主机bright.hacker.com.cn的syslogd守护进程要用-r参数启动。如果不使用-r参数,则目标主机的syslogd将丢弃这个消息以避免DoS攻击使硬盘塞满虚假消息。并且确保目标主机的/etc/service文件必须设置syslog服务所使用的UDP端口514(这也是RedHat Linux默认的设置)。如果syslogd守护进程用了-r和-h参数,那么,参数-h将允许转发消息。也就是说,如果系统B的syslogd用了-h参数,这样,当系统A把消息转发到系统B后,系统B就把来自系统A和它自己的消息转发到系统C。

  将警告信息发送到控制台

  syslogd可以将任何从内核发出的重要程度为emerg或alert的信息发送到控制台。控制台是指虚拟控制台或启动时加-C参数的xterm。要实现这一功能,在/etc/syslog.conf文件中加上下面一行:kern.emerg /dev/console

  这样,当系统内核发生错误而发出消息时,用户能够马上知道并且进行处理。如果用了“*”,就是一旦内核发生错误,就将消息发送给所有在线用户,但只有这个用户正在登录的时候才能看到。修改了/etc/syslog.conf文件后,必须重新启动syslogd守护进程以使配置更改生效,请执行下面的命令:#/etc/rc.d/init.d/syslog restart


相关文章推荐

Apahce日志文件配置

  • 2017年10月17日 11:03
  • 127KB
  • 下载

Django+python 日志文件配置

原文链接:http://www.yihaomen.com/article/python/262.htm 项目的开发过程中,日志文件是少不了的,通过写日志文件,可以知道程序运行的情况。特别当部署在生产...

linux的日志文件系统

  • 2010年04月28日 22:07
  • 27KB
  • 下载

Linux中常见的日志文件和命令.rar

  • 2008年06月18日 19:59
  • 380KB
  • 下载

log4j配置输出到多个日志文件

通常我们项目里,有一些重要的日志想单独的输出到指定的文件,而不是全总输出到系统的日志文件里,那么我们log4j为我们提供了这样的功能,下面我们来一步一步看是怎么做的。这里以property...

LINUX教程之16-linux下的日志文件

  • 2008年03月12日 13:01
  • 14.17MB
  • 下载

xorg日志文件及xorg的初始化和配置过程,1

ubuntu的xorg的配置文件通过/var/log/Xorg.0.log查看位置 http://www.x.org/releases/individual/xserver/ 可以下载xserver...

nginx学习笔记5 nginx日志文件的配置

http://www.cnblogs.com/losbyday/p/5839738.html
  • Tiglle
  • Tiglle
  • 2017年03月20日 20:55
  • 145
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:配置Linux日志文件
举报原因:
原因补充:

(最多只允许输入30个字)