日志文件的作用

日志文件用于记录linux系统的各种运行信息的文件,相当于linux主机的日记,不同的日志文件记载了不同类型的信息,如Linux内核消息、用户登录事件、程序错误等。.
日志文件对于诊断和解决问题很有帮助,因为linux运行的程序通常把系统的消息和错误写入对应的日志文件,这样系统可以有据可查, 此外,当主机遭受攻击时,日志文件还可以帮助寻找攻击者留下的痕迹。

日志文件的分类

1.内核及系统日志:
内核及系统日志:这种日志数据由系统服务rsyslog同-管理,根据其主配置文件/etc/rsyslog.conf中的设置决定将内核消息及各种系统程序消息记录到什么位置。系统中大部分的程序会把自己的日志文件交由rsyslog管理,因而这些应用程序使用的日志记录格式都很相似。

/etc/rsyslog.conf 常见配置格式为:
. 比后面等级高的(包含自己) *.info
.= 只记录该等级 .=debug
! 除了该等级都记录 ! info

  • 有记录需要记录时,先缓存到一定大小,一次性写入

2.用户日志:
用于记录Linux系统用户登录及退出系统的相关信息,包括用户名、登录的终端、登录时间、来源主机、正在使用的进程操作等。
3.程序旧志
:有些应用程序会选择独立管理一份日志文件 ,而不是交给rsyslog服务管理,用于记录本程序运行过程中的各种事件信息。于这些程序只负责管理自己的日志文件,因此不同程序所使用的日志记录格式也会存在较大的差异。

日志文件的位置

Linux系统本身和大部分服务器程序的日志文件默认放在/var/log/下。
部分程序共用一个日志文件,一部分程序使用单个日志文件。
而有些大型服务器程序日志由于日志文件不止一个,所以会在/var/log/目录中建立相应的子绿来存放日志文件,这样既保证了日志文件目录的结构清晰,又可以快速定位日志文件。有一部分日志文件只有root用户才有权限读取,这保证了相关日志信息的安全性。

常见的日志文件及查看方式

日志文件 存放内容
/var/log/message 内核消息及各种应用程序的公共日志信息,包括启动、I/O错误、 网络错误、
/var/log/cron Crond周期性计划任务产生的时间信息
/var/log/dmesg 弓|导过程中的各种时间信息
/var/log/ maillog 进入或发出系统的电子邮件活动
/var/log/lastlog 每个用户最近的登录事件
/var/log/secure 用户认证相关的安全事件信息
/var/log/wtmp 每个用户登录注销及系统启动和停机事件
/var/log/btmp 失败的、错误的登录尝试及验证事件

做一个表格,便于查看:

日志消息的级别

根据日志信息的重要程度不同,分为不同的级别
数字级别越小,优先级越高,消息越重要
级别 英文表示 意义
0 EMERG(紧急) 导致主机系统不可用的情况
1 ALERT(警告) 必须马上采取解决措施
2 CRIT 严重 比较严重的情况
3 ERR 错误 运行出现错误
4 WARNING 提醒 提醒用户的重要事件
5 NOTICE 注意 不会儿影响系统,提醒用户
6 INFO 信息 一般信息
7 DEBUG 调式 程序调式
8 None 没有 不做记录

[root@localhost ~]#grep -E -iw “emerg|alert|critical|error” /var/log/messages 查看出现的重大的错误

日志文件分析

内核及大多数系统消息
内核及系统日志主要由默认安装的rsyslog软件包提供, rsyslog服务所使用的配置文件为/etc/rsyslog.conf ,通过查看配置文件内容可以了解到系统默认的日志位置。

[root@localhost ~]# grep -Ev “$|#” /etc/rsyslog.conf

可以看出大部分存放到公共日志文件/var/log/message中,其他的日志文件直接发送给用户或者放到自己独立的日志文件中

[root@localhost ~]# tail -f /var/log/messages

时间标签:消息发出的日期时间
主机名 生产消息的计算机的名称
子系统名称:发出消息的应用程序的名称
消息 消息级别的具体内容

rsyslog日志服务是一个常会被攻击的目标,破坏了它将使运维员很难发现入侵及入侵的痕,因此要特别注意监控其守护进程及配置文件。

用户日志:

存放位置: /var/og/wtmp. /var/log/btmp、 /var/log/lastlog
查询命令: users、who、w、last、 lastlog、 lastb等
users命令:只是简单的输出当前登录的用户名, 每个显示的用户名对应一个会话。

who命令:报告当前登录到系统的每个用户的信息,包括用户名,终端,登录日期,远程主机

w 显示当前操作系统的每个用户及其远程所运行的进程信息

last命令:用于查询成功登录到系统的用户记录,最近的登录情况在最前面。
通过last命令可以及时掌握Linux主机的登录情况,若发现未经授权的用户登陆过,则表示当前主机可能已被入侵。
-a :把从何处登录系统的主机名称或IP地址,显示在最后一 行
-d :将IP地址转换成主机名称
-f 记录文件] :指定记录文件
-R :不显示登入系统的主机名称或IP地址
-x :显示系统关闭,重新开机,以及执行等级的改变等
-n : n代表数字,表示最近n次登录的记录

lastlog命令:用于显示系统中所有用户最近一次登录信息

lastb命令:用于显显用户错误的登录列表,此指令可以发现系统的登录异常。如登录的用户名错误,密码不正确等情况都会记录在案,登录失败的情况属于安全事件,因此消失可能有人在尝试破解密码。除了使用lastb命令以外,可以直接从安全日志文件/var/log/secure中获得相关信息。

分析日志的注意事项

总的来说,作为一名合格的系统管理人员,应该提高警惕,随时注意各种可疑的状况定期并随机的检查各种系统日志文件,包括-般信息日志、 网络连接日志、文件传输日志及用户登录日志记录等。在检查这些日志时,要注 意是否有不合常理的时间或操作记录。
例如出现以下一些现象就应该多加注意:

1用户在非常规的时间登绿,或者用户登录系统的IP地址和以往不一样的

2登录失败的日志记录,尤其是那些一再连续尝试进入 失败的日志记录

3非法使用或不正当使用超级用户权限

4无故或者非法重新启动各项网络服务的记录

5不正常的日志记录,如日志残缺不全,或者是诸如wtmp这样的日志文件无故缺少了中间的记录文件

注意:需要提醒运维人员的是,日志并不是完全可靠的,高明的黑客在入侵系统后经常会打扫现场,所以管理人员需要运用综上的所有知识,全面、综合的进行审查和检测。

日志管理:

针对日志定期备份、异地备份(保留1~3个月的日志记录)

针对日志定期切割

针对日志的权限要严格(为了防止敏感信息泄露)

针对日志做集中管理

对于日志文件的保护

chattr +a日志文件, a选项为append (追加) only ,即给日志文件加上a权限后,将只可以追加,不可以删除和修改之前的内容。
[root@localhost ~]# cp /ar/log/secure ./seccure.txt
[root@localhost ~]# chattr +a /var/log/secure
[root@localhost ~]# Isattr /var/og/secure

[root@localhost ~]# rm -rf /var/log/secure
rm:无法删除’ /var/log/secure":不允许的操作
root用户在v编辑器的命令模式按dd删除了两行内容后进行wq !强制保存退出,也会报错

课外补充: chattr +a -R递归式增加a权限
[root@localhost ~]# Isattr /var/log/

linux系统日志文件的详细介绍相关推荐

  1. linux系统文件系统个目录介绍,关于linux的文件系统目录详细介绍

    首先我们回答一下最为宽泛的问题,什么是文件系统? 文件系统是对一个存储设备上的数据和元数据进行组织的机制.liuux的文件系统体系结构是一个对复杂系统进行抽象化的有趣例子,通过使用一组通用的API函数 ...

  2. linux系统日志文件介绍

    原文出处:鸟哥笔记:linux系统日志文件介绍 简单的说日志文件就是记录系统活动信息的几个文件,例如:何时.何地(来源ip).何人(什么服务名称).做了什么操作.换句话说就是:记录系统在什么时候由哪个 ...

  3. 电脑上的linux是什么文件夹,linux删除文件夹,详细教您电脑的linux怎么样删除文件夹...

    上期小编讲解了重装系统win7旗舰版64位教程,本次正特手机网小编给大家讲解一下linux删除文件夹,详细教您电脑的linux怎么样删除文件夹,linux主要是做什么用的?有用户在网上提出这样的提问, ...

  4. python代码文件方式_关于.py文件的详细介绍

    这篇文章主要给大家介绍了在Python中.py文件打包成exe可执行文件的相关资料,文中介绍的非常详细,相信对大家具有一定的参考价值,需要的朋友们下面来一起看看吧.前言最近做了几个简单的爬虫pytho ...

  5. linux的run目录,Linux 中run 目录详细介绍

    原标题:Linux 中run 目录详细介绍 /run 是各种各样数据的家园.例如,如果你查看 /run/user,你会注意到一组带有数字名称的目录. $ ls /run/user 1000 1002 ...

  6. 【转】LINUX内核编译步骤详细介绍

    from: http://blog.csdn.net/do2jiang/article/details/4201203 LINUX内核编译步骤详细介绍 到www.kernel.org 下载 Linux ...

  7. LINUX内核编译步骤详细介绍

    LINUX内核编译步骤详细介绍 到www.kernel.org 下载 Linux-2.6.18.2.tar.bz2 tar –jxvf  Linux-2.6.18.2.tar.bz2 -C /usr/ ...

  8. 定期清空Linux系统日志文件

    定期清空Linux系统日志文件   Linux系统的日志文件,比如Apache的日志文件,在使用了一段时间后,可能会变得比较大,如果不清空的话,可能会发生这样那样的问题.定期清空一下这些日志文件是比较 ...

  9. wince中BIB文件的详细介绍

    wince中BIB文件的详细介绍 在WinCE中使用的一个重要的文件就是BIB文件,全称Binary Image Builder File.在WinCE的编译过程中会用到BIB文件,应该是在最后的Ma ...

最新文章

  1. Git学习笔记——一个NB的分布式版本控制系统
  2. powerbuider11 C/S 转换为B/S
  3. 【2014-11-23】《The Hardware/Software Interface》– Section 11
  4. 云小课 | ModelArts Pro 自然语言处理套件:高效构建行业高精度文本处理模型
  5. VG SketchPad编辑器——可嵌入的jQuery插件
  6. 我爱Java系列---【1.Vue的快速入门案例】
  7. .NET+Oracle 9i时产生的未在本地计算机上注册“OraOLEDB.Oracle.1”提供程序
  8. http status 400 – bad request 亚马逊_蛮拼的!这个亚马逊卖家为Prime Day做了这三大准备,销量暴涨58倍...
  9. Zalo电脑版多开软件
  10. JQuery实现 任务清单案例
  11. 聊聊那些计量软件(区别、流行度 R Matlab SPSS SAS STATA)
  12. java epoch_获取Java中的Epoch的天数,周数和月份
  13. Windows系统时间不准问题
  14. Infor CloudSuite Industrial (SyteLine) 报告文件存储位置设置
  15. PHP实现九宫格图片水印功能
  16. 程序员的奋斗史(十八)——人活着,只是一种态度
  17. 基尔霍夫电流/电压定律
  18. Windows下 开机自启动jar包
  19. BLE-SDP服务发现协议
  20. 湖南省计算机专业职称,[湖南省人力资源和社会保障厅]关于调整全国专业技术人员计算机应用能力考试科目(模块)有关问题的通知湘人社函[2014]273号...

热门文章

  1. java形状类_[转载]JAVA 设计一个形状类Shape 求周长和面积
  2. RevitAPI之创建一个面积【比目鱼原创】
  3. 页面加载的几种方式和区别
  4. Mac中用Excel导入csv文件出现中文乱码
  5. 计算机组装中编制配置单的方法,组装电脑:网上组装的吃鸡主机,来看看他的配置单,这里面水很深...
  6. Android 走向MD的配色风格
  7. 什么是java环境变量_什么是java环境变量
  8. 美颜瘦脸算法原理详解
  9. 80老翁谈人生(291):揭开沃森超级电脑的神秘面纱
  10. 惠普电脑怎么用access_如何启动自己电脑中的Access软件