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

相关推荐

  • Codis集群3.03安装配置基础

    Codis基础 01.codis是一个分布式的Redis解决方案,对于上层的应用来说,连接Codis Proxy和连接原生的Redis Server没有明显的区别。 codis底层会处理请求的转发,不停机的数据迁移等工作,所有后边的一切事情,对于前面客户端来说是透明的,可以简单的认为后边连接是一个内存无限大的Redis服务。 codis架构图如下: 02.c…

    Linux干货 2016-09-26
  • N26 第二周作业

    1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。 文件管理类命令有:mkdir rmdir cp mv rmmkdir:创建文件夹命令格式:mkdir [OPTION]… DIRECTORY… # 创建日期文件夹       &…

    Linux干货 2017-01-17
  • N25-第二周作业

    1、linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示 linux上处理目录的常用命令:     ls :列出目录     cd :切换目录     pwd:显示当前工作路径    &nbs…

    Linux干货 2016-12-13
  • N27_网络班第九周作业

    N27_网络班第九周作业 1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现 #!/bin/bash loginuser=`grep -v ‘/sbin/nologin’ /etc/passwd | wc -l` nologin=`grep …

    2017-10-10
  • awk

    文本处理工具 文本处理三工具:grep,sed,awk grep,egrep,fgrep:文本过滤工具 sed:行编辑器 awk:报告生成器,格式化文本输出; awk gawk – pattern scanning and processing language lrwxrwxrwx. 1 root root 4 May 17 19:23 /bi…

    Linux干货 2017-05-21
  • N26-第三周博客

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只 显示一次即可。 [yang@localhost /]$ who | cut -d" " -f 1 | sort -u 2、取出最后登录到当前系统的用户的相关信息。 [root@localhost tmp]# last | head -1 3、取出当前系…

    Linux干货 2017-02-08