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 09:52
下一篇 2017-08-14 18:17

相关推荐

  • 循环的特殊用法及函数

    while特殊用法 while read 变量名;do 循环体 done<文件路径(将文件中的每一行依次读入循环体,赋值给变量)   (())可以实现C语言风格的变量操作 for循环特殊格式 for((控制变量初始化;条件判断表达式;控制变量修正表达式)) do 循环体 done 控制变量初始化仅在循环开始时执行一次,进行条件判断成立后执行循…

    Linux干货 2016-08-21
  • 推荐-LVS专题: LVS+Keepalived并使用DNS轮询实现Director的高可用和负载均衡

    LVS专题: LVS+Keepalived并使用DNS轮询实现Director的高可用和负载均衡 前言 什么是KeepAlived 实验介绍 实验拓扑 实验环境 实验步骤 配置KeepAlived(1) 实现Director 的VIP互为主从 测试 配置LVS 配置KeepAlived(2) 测试LVS 配置RS的IP和web服务 配置DNS 最终测试 总结…

    Linux干货 2016-04-09
  • Mariadb数据库备份恢复系列(三):xtrabackup物理备份工具之增量备份

       实验三:利用xtrabackup+二进制日志实现增量备份和恢复数据库 本例中实现的是将所有的增量日志都通过apply-log的步骤同步到完全备份文件中,如果希望利用增量日志还原到固定某次增量备份的数据,则不能使用本例中方式对所有的备份都进行apply-log操作,如果希望利用增量日志还原到固定哪次增量备份的数据,则将最初的完全备份的数据、和期望还原到某…

    Linux干货 2016-11-24
  • 魔术方法

    Edit 魔术方法 使用Python的魔术方法的最大优势在于他们提供了一种简单的方法来让对象可以表现的像内置类型一样。那意味着你可以避免丑陋的,违反直觉的,不标准的的操作方法。 特殊属性 属性 含义 __name__ 类、函数、方法等名字 __module__ 类定义所在的模块名? __class__ 对象或类所属的类 __bases__ 类的基类的元组,顺…

    Linux干货 2017-11-21
  • Linux screen命令

    screen命令 一、简介 Screen是一款终端模拟的屏幕管理器,用于命令行终端自由切换。 当我们需要执行一个用时较多的作业,不希望自己或者他人误操作关闭终端导致作业中断,可以进入screen,这样,当终端关闭,作业仍会继续执行。 GNU’s Screen 官方站点:http://www.gnu.org/software/screen/ &nb…

    2017-07-13
  • 正则表达式基础知识及grep、egrep详解

    什么是正则表达式     在计算机科学中,正则表达式是这样解释的:它是指一个用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串。在很多文本编辑器或其他工具里,正则表达式通常被用来检索和/或替换那些符合某个模式的文本内容。许多程序设计语言都支持利用正则表达式进行字符串操作。对于系统管理员来讲,正则表达式贯穿在我们…

    Linux干货 2016-08-08