📄 00000016.htm
字号:
<BR> syslogd程序的行为由/etc/syslog.conf文件控制,这个文件由一系列定义消息“到哪 <BR>里去”的行组成。按照一般的conf文件规则,以#开头的行被当成注释行。 <BR> <BR> syslog.conf的行的基本语法是: <BR> <BR> [消息类型] [动作] <BR> <BR> 中间的分割符必须是TAB字符,我曾经在这个问题上犯过错误,所以提醒你一下。 <BR> <BR> 消息类型由“消息来源”和“紧急程度”构成,中间用一个点号连接,消息来源是指 <BR>发送消息的设备/程序类别,紧急程度表示这个消息的重要性。如果你想在一行上标出多 <BR>个消息类型,中间用分号分开。例如,kern.emerg表示来自内核的“紧急”信息,而da <BR>emon.warning;auth.info表示来自任何守护进程的警告加上来自安全性检验程序的一般 <BR>信息。 <BR> <BR> 下面是消息来源的一览表: <BR> <BR> kern 内核 <BR> <BR> user 用户程序 <BR> <BR> mail 电子邮件系统(smtp,pop3等等) <BR> <BR> daemon 系统守护进程 <BR> <BR> auth 和安全性以及权限修改相关的命令 <BR> <BR> lpr 打印机 <BR> <BR> authpriv 私用的授权信息 <BR> <BR> mark 定时产生的时间戳 <BR> <BR> cron cron程序 <BR> <BR> syslog syslod程序自身产生的消息 <BR> <BR> local0-7 8种本地消息 <BR> <BR> news Usenet系统消息 <BR> <BR> uucp uucp程序 <BR> <BR> 注意你可以使用一个通配符来指代所有的设备,例如*代表一切消息来源,而none表示 <BR>什么都没有。 <BR> <BR> 紧急程度的列表见下表,紧急程度由上到下逐步减小: <BR> <BR> emerg 陷入极度恐慌的状态之中,这是最高的紧急程度。它还有一个别名叫panic, <BR>不过手册上建议你不要用这个,还是用emerg比较好。 <BR> <BR> alert 紧急状态(红色警报?) <BR> <BR> crit 临界状态 <BR> <BR> err 出现错误,它有一个别名叫error,这个别名已经停用。 <BR> <BR> warning 警告,别名是warn <BR> <BR> notice 出现了某些不寻常的事情,可能应该调查 <BR> <BR> info 一般性消息 <BR> <BR> debug 用于调试的信息 <BR> <BR> 紧急程度的规则是向上匹配,也就是一个debug标志意味着所有消息都要被处理,而c <BR>rit选项将处理所有级别为crit,alert和emerg的消息。如果你希望只匹配某个确定的紧 <BR>急程度,使用一个等号,例如kern.=crit。* 和 none通配符仍然可以使用,例如kern. <BR>*表示所有核心产生的信息,而kern.none将抛弃掉所有核心信息。 <BR> <BR> “动作”选项告诉syslogd应该如何处理对应的消息:将它存入硬盘文件,显示在终端 <BR>上,发送给某个用户或者转发给另外一台主机。下面是可用动作的一览: <BR> <BR> 文件名 写入某个文件,注意这里必须使用文件的绝对路径 <BR> <BR> @主机名 转发给另外一台主机上的syslogd程序 <BR> <BR> @IP地址 等价于@主机名,只是使用IP地址标志远程机器 <BR> <BR> 用户列表 用逗号分开的用户列表,例如user1,user2表示如果user1 和 user2登录的 <BR>话就把信息发送到他们的终端上 <BR> <BR> * 发送到所有用户的终端上 <BR> <BR> /dev/console 发送到本地机器的屏幕上 <BR> <BR> |程序 通过管道转发给某个程序 <BR> <BR> 为了解释上面的内容,现在让我们看一看范例性的syslog.conf文件,这个文件把紧急 <BR>性的消息直接发送给所有用户,而不寻常的安全性信息发送到另外一台主机上。普通的 <BR>消息就直接写入记录文件: <BR> <BR> #/etc/syslog.conf <BR> <BR> kern.emerg /dev/cons <BR>ole <BR> <BR> #一旦发生核心恐慌,立刻把信息显示在控制台上。 <BR> <BR> *.emerg * <BR> <BR> #当出现任何紧急事件的时候,把消息发送给所有用户 <BR> <BR> *.info;mail.none;news.none;authpriv.none;daemon.none /var/log/messages <BR> <BR> #把一般性的信息送到/var/log/messages文件中保存起来,但是不包括信件,新闻和 <BR>本地安全性信息。 <BR> <BR> auth.*;authpriv.* <A HREF="mailto:@locallog.">@locallog.</A> <BR>yourdomain.com <BR> <BR> #与身份认证有关的安全性信息,例如su(对应auth事件),发送到locallog.youredom <BR>ain.com主机上记录下来 <BR> <BR> mail.* /var/log/maillog <BR> <BR> #所有与电子邮件相关的信息,保存在/var/log/maillog中 <BR> <BR> uucp,news.crit /var/log/spooler <BR> <BR> #UUCP和电子新闻系统的问题,记录到/var/log/spooler文件中 <BR> <BR> 在这个例子中,某些信息 <BR> <BR> daemon.notice /var/log/daemon.log <BR> <BR> #系统守护进程发出的警告,存储到/var/log/daemon.log <BR> <BR> 设置了syslogd.conf之后,就可以启动syslogd了: <BR> <BR> #/sbin/syslogd <BR> <BR> 在这个例子中,我们将一些信息发送到了locallog.yourdomain.com主机上,为此,l <BR>ocallog主机必须设置为可以接受来自网络的syslog信息,这可以用-r选项实现:在loc <BR>allog主机上执行 <BR> <BR> #/sbin/syslogd –r <BR> <BR> 这样locallog主机就会监听网络记录所有来自其他机器的系统记录请求。 <BR> <BR> 接下来就可以测试你做的设置是否正确了,当然,像*.info这样的信息可以随便在系 <BR>统上做一点工作产生出来,不过,大概你不会希望为了测试kern.alert而制造一次核心 <BR>恐慌。为此,syslog中包含logger程序,可以用它产生出各种syslog消息: <BR> <BR> logger –p [消息类型] [消息内容] <BR> <BR> 例如,我们想测试对于我们这个syslog.conf的缺省kern.emerg行为,可以执行 <BR> <BR> # logger -p kern.emerg "test kern" <BR> <BR> # <BR> <BR> Message from syslogd@wxd at Tue Mar 21 08:21:32 2000 ... <BR> <BR> wxd wanghy: test kern <BR> <BR> 信息被发送给了所有的用户,表明*.emerg那一行已经正常工作了。 <BR> <BR> 发送给locallog的信息也可以这样产生出来,例如 <BR> <BR> #logger –p auth.info "I'm testing syslogd" <BR> <BR> 然后可以察看locallog主机上的记录,在locallog主机上,所有*.info信息都被记录 <BR>在/var/log/messages文件中,因此我们可以察看这个文件,你会看到类似这样的行: <BR> <BR> Mar 21 08:28:21 wxd wanghy: I'm testing syslogd <BR> <BR> 这说明消息正确地传送和记录了。这里的wxd wanghy表示消息来自wxd主机,发送消息 <BR>的用户是wanghy。 <BR> <BR> 一般情况下,syslogd的记录信息是对系统进行分析和出错的最重要手段,而且在有人 <BR>侵入系统的时候,也是最主要的记录。不过,缺省的Linux syslog.conf的配置并不是很 <BR>合适,特别是,所有信息被不分青红皂白地放在/var/log/messages下面,你应该重新按 <BR>照自己的需要配置syslog.conf。 <BR> <BR> 一个常用的手段是建立独立的系统监视账户。一般情况下,系统的*.emerg和*.alert <BR>表示已经出现了紧急情况,必须立刻处理。我们可以建立一个仅用来监视系统紧急情况 <BR>的账号,比如watch,然后把所有紧急消息发送给它: <BR> <BR> *.alert watch <BR> <BR> 系统管理员每天早晨以watch身份登录,这样,一旦出现危机,消息会立刻传送到wat <BR>ch登录的终端上显示出来。 <BR> <BR> 必须注意的是,原则上也可以用/dev/console把信息发送到终端上,不过要注意用户 <BR>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -