首页 > 代码库 > Linux运维系统工程师系列---15

Linux运维系统工程师系列---15

系统日志

  

    何谓日志?

相当于系统中的账本,会将系统中发生的事情,按照时间先后顺序,分门别类的记录到不通的文件里。


    日志的用途?

当系统发生问题,或者查询历史信息的时候,我们会查询日志。

1)解决系统方面的错误

2)解决网络方面的问题

3)记录重要的事件

4)解决安全方面问题,一般分析日志,看看有无风险


    日志的种类:

1)系统自带日志

2)文件系统日志  ext3/ext4

3)应用程序自带的日志,比如ssh,dhcp,http都有相应的日志

    1.日志简介

        

Linux系统日志默认存放位置

/var/log

日志的后台进程daemon

rsyslogd —— 正常运行状态记录日志的后台进程

rhel5 ——syslogd 

klogd —— 主要记录内核产生的信息

logrotated——日志轮滚机制的后台进程


Linux常用日志文件:

1、/var/log/messages    ****最重要

最重要的系统日志,几乎所有的系统错误信息都会记录在此

2、/var/log/cron 记录的是计划任务相关的信息

3、/var/log/secure 安全相关的日志

4、/var/log/maillog 记录和邮件相关的信息

5、/var/log/dmesg 硬件侦测信息

6、/var/log/lastlog 所有的账号最近一次登录系统的相关信息

7、/var/log/wtmp 记录的是正确登录的人的信息,可以用last来查看

日志格式的基本说明

[root@server102 log]# tail -f /var/log/secure

Oct 21 14:15:31    localhost       sshd[10916]: pam_unix(sshd:session): session closed for user root

事件发生的时间    主机名         程序          事件说明

      2.日志配置

            

            日志文件的服务配置

            /etc/rsyslog.conf

            配置文件简单说明

        ——提供接收远程日志的服务

        # Provides TCP syslog reception

        #$ModLoad imtcp

        #$InputTCPServerRun 514

        #### GLOBAL DIRECTIVES ####

        # Include all config files in /etc/rsyslog.d/

        $IncludeConfig /etc/rsyslog.d/*.conf        全局定义,包含/etc/rsyslog.d/目录下的所有.conf文件

        #### RULES ####

    # Log all kernel messages to the console.

    # Logging much else clutters up the screen.

    #kern.*                                                 /dev/console

    # Log anything (except mail) of level info or higher.

    # Don‘t log private authentication messages!

    *.info;mail.none;authpriv.none;cron.none                /var/log/messages 

        格式:服务器或者设备.日志级别 把日志记录在哪里


服务名称:

auth(authpriv):和认证相关的。login、ssh时候

cron:和计划任务有关的

daemon:和服务守护进程相关的

kern:和内核相关的

lpr:和打印机相关的

mail:和邮件相关的

news,uucp:新闻组相关的

syslog:和rsyslog相关的

local0~local7:用户自定义的服务名称

日志级别:

1、none——不记录日志

2、debug——调试信息

3、info——一般的通知信息

4、notice——提醒,通知信息

5、warning(warn)——警告信息,可能有问题,但是不至于影响服务运行

6、err(error)——错误信息,比如:可能是配置文件错了,服务可能启动不起来了

7、crit(critical)——严重,需要预防

8、alert——警报,需要你立即采取行动

9、emerg(panic)——紧急(恐慌),系统很有可能已经不能运行了

服务名称.信息等级的表示方式:

. —— mail.warning:表示的是记录waring级别的信息,以及比warning级别更高的信息

.= —— mail.=warning:表示的是只记录warning级别信息

.! —— mail.!warning:表示的是除了warning级别,都记录

.none—— 表示的不记录日志

*:表示所有

*.   —— 表示所有服务

.* —— 表示所有级别

例子:

# The authpriv file has restricted access.

authpriv.*                                              /var/log/secure

authpriv.*                                              /usr/local/secure


修改完配置文件,要重启服务

[root@server102 log]# /etc/init.d/rsyslog restart

Shutting down system logger:                               [  OK  ]

Starting system logger:                                    [  OK  ]


为了防止日志被修改,加上a属性,只能追加。

       3.远程日志

            

            为了增加安全,出现了远程日志

            远程日志的配置步骤:

        1、本地配置

        *.* @172.16.2.102

        2、远程服务器配置

        # Provides UDP syslog reception

        $ModLoad imudp

        $UDPServerRun 514

        3、客户端和服务器端服务重启

[root@server103 log]# /etc/init.d/rsyslog restart

        4、验证

在本地

[root@server102 log]# su - mark

[mark@server102 ~]$ su - root   输入错误的密码

查看本地和远程日志

        [root@server102 log]# tail -f /var/log/secure

注意防火墙。

iptables -L 查看防火墙规则

iptables -F     清除防火墙规则

service iptables save   保存防火墙规则

    日志有关部分未完,待续。。。。。。


本文出自 “空谷幽兰” 博客,请务必保留此出处http://2489843.blog.51cto.com/2479843/1538410