linux 系统日志管理

     在linux系统上面,系统可以记录从开机到当前系统上面何时发生了那些事情,并将其分类,分级别写到特定的日志文件当中,如系统自身产生的问题,用户登录信息,网络数据信息等等。我们可以根据这些日志信息来解决系统方面的错误,网络服务问题等等。日志对于安全来说,非常重要,它记录了系统每天发生的各种各样的事情,你可以通过它来检查错误发生的原因,或者受到攻击时攻击者留下的痕迹。 日志主要的功能有:审计和监测。它还可以实时的监测系统状态,监测和追踪侵入者等等。

  日志存在的位置/var/log即ls /var/log

linux 系统日志管理

 常用的日志文件如下: 
   btmp 记录denglu失败的信息 
   lastlog 记录最近几次成功登录的事件和最后一次不成功的登录 
   messages 从syslog中记录信息(有的链接到syslog文件) 
   utmp    记录当前登录的每个用户

   wtmp    系统登录的情况:登入登出

登录信息的查看 
我们也可以通过last 命令查看登录日志内容 
哪个用户在哪个时间通过哪种方式登录系统的情况
      1./var/log/lastlog  #最后登录信息
      2.lastlog  #记录所有的用户什么时候登录过系统
      3./var/log/btmp  # 用户登录系统的错误信息
          lastb  查看
      4./var/log/wtmp  # 用户登录系统的成功信息
      5.# 如果说你发现你的btmp文件变得很大,说明有很大的可能是有人在暴力破解你的主机

日志的记录方式:

         消息类型:auth,authpriv,security;cron,daemon,kern,lpr,mail, mark,news,syslog,user,uucp,local0~local7.
         错误级别:(8级)debug,info,notice,warning|warn;err|error;crit,alert,emerg|panic
         动作域:file,user,console,@remote_ip
         举如上的/etc/syslog.conf文件三个例子:
         *.info;mail.none;authpriv.none;cron.none /var/log/messages
        表示info级别的任何消息都发送到/var/log/messages日志文件,但邮件系统、验证系统
        和计划任务的错误级别信息就除外,不发送(none表示禁止)
         cron.* /var/log/cron 表示所有级别的cron信息发到/var/log/cron文件
         *.emerg * 表示emerg错误级别(危险状态)的所有消息类型发给所有用户
日志输入的规则 
        .info 高于info级别的信息全部记录到某个文件 
        =级别 仅记录等于某个级别的日志 
      例:.=info 只记录info级别的日志 
      ! 级别 除了某个级别意外,记录所有的级别信息 
     例.!err 除了err外记录所有 
     none 指的是排除某个类别
自定义ssh服务的日志:

#编辑vim /etc/rsyslog.conf

linux 系统日志管理

定义sshd日志的级别 vim /etc/ssh/sshd_config,重启服务,测试结果

linux 系统日志管理

systemctl restart rsyslog

systemctl restart sshd

linux 系统日志管理

linux 系统日志管理

linux日志的切割存储(回滚原理)

 随着日志文件内容的日益增加,对于后期的处理带来非常的不便,因此就需要一种机制能够对日志进行处理,rsyslog就提供了一个这杨一个功能组件logrotate

vim /etc/logrotate.conf

       # rotate log files weekly
       weekly  # 每周执行回滚
      # keep 4 weeks worth of backlogs
     rotate 4   #保留4个副本 
      # create new (empty) log files after rotating old ones
     create   #创建新的文件存储数据
     # use date as a suffix of the rotated file
     dateext   #使用日期为后缀的回滚文件  #可以去/var/log目录下看看
     #compress
     # RPM packages drop log rotation information into this directory
      include /etc/logrotate.d
     # no packages own wtmp and btmp — we’ll rotate them here
        /var/log/wtmp {  #指定的日志文件
               monthly     #每月轮转一次
               create 0664 root utmp
                minsize 1M    #日志文件必须大于1M才会去轮换(回滚)
                 rotate 1      #保存一个轮换日志
     }
       /var/log/btmp {
    missingok  #  如果日志文件不存在,继续处理下一个文件而不产生报错信息。
    monthly
    create 0600 root utmp  #设置utmp  这个日志文件的权限,属主,属组
    rotate 1
    }
我们跟着上面个例子继续据ssh日志来完成日志的切割存储

linux 系统日志管理

准备两台装置server   client 

首先服务端

linux 系统日志管理

重启及查看端口

linux 系统日志管理

m在客户端client

linux 系统日志管理

重启服务及测试


linux 系统日志管理

linux 系统日志管理

tail -f /var/log/message  动态查看增加内容:

原创文章,作者:gd1479,如若转载,请注明出处:http://www.178linux.com/84718

(2)
gd1479gd1479
上一篇 2017-08-14
下一篇 2017-08-14

相关推荐

  • Boot目录下内容丢失导致系统无法启动

    Boot目录下内容丢失导致系统无法启动 笔者朋友近期在一次学习过程中不慎将虚拟机中boot目录下内容丢失,导致系统无法启动。当然此前他并不知道是这样,只是应为莫名的弹出框报错所有导致系统无法启动。此后朋友将此故障告知笔者,笔者本身其实也是小白刚刚学习linux不就,但是对这些稀奇古怪的故障感觉很有兴趣,所以笔者就掉进坑里搞了好久才搞出来点眉目来。为了让更多学…

    Linux干货 2016-10-24
  • ☞LVS

    LVS 概述 LVS工作类型 LVS NAT LVS DR(默认) Direct Routing带来的问题 限制响应模型的内核参数 LVS TUN LVS FULLNAT scheduling-method 静态调度算法 动态调度算法 CentOS 7 中的ipvs组件 安装ipvsadm程序 主要文件 ipvsadm命令 配置集群服务 NAT方法示例 DR…

    Linux干货 2016-10-26
  • 源码包编译安装MariaDB-10.1.22

    源码包编译安装MariaDB-10.1.22 1、获取源码包        mariadb-10.1.22.tar.gz 2、编译环境及依赖关系     yum groupinstall -y Development Tools yum -y install …

    Linux干货 2017-03-16
  • 【26期】Linux第四周学习小总结

        第四周了,转眼就学习有关Linux的知识一月了,从开始的懵懵懂懂,到现在的懵懵懂懂,不变的是无边无际的知识,改变的是一小片迷雾被我们渐渐拨开了一角,学习的枯燥和充实,陪我们走完这安稳的最后学习时光。     今天分享的是一些我们本周学习的变量方面的东西,那么,什么是变量呢?变量来源于数学,是计算机语言中能储存计…

    2017-08-05
  • vi与vim的使用

    一、引言     在Linux中,vi(Visual Interface)是标准的编辑器,功能强大到不逊于任何最新的编辑器。无论在Linux中还是在Unix中,vi的使用方法都是完全相同的。vim(Vi Improved)在vi的基础上增加了很多新特性。 二、模式     vim…

    Linux干货 2016-08-11
  • 马哥教育网络班22期+第一周课程练习

    1、描述计算机的组成及其功能。 计算机由硬件系统、操作系统和应用软件所组成,没有安装任何软件的计算机称为裸机。 1.1、硬件系统由运算器、控制器、存储器、输入设备和输出设备五大部分组成,遵循冯、诺依曼原理。 控制器:读取分析指令,向其它部分发出控制信号,保证计算机按照预先规定的目标和步骤有条不紊地进行操作及处理。  运算器:对数据进行各种运算,例如…

    Linux干货 2016-08-22